{
  "openapi": "3.1.0",
  "info": {
    "title": "VirtuaBroker API",
    "version": "1.0.0",
    "description": "\nThis API lets you integrate with VirtuaBroker as a partner or B2B client: automate quotes, orders, deposits, balances, withdrawals, and webhooks using stable JSON contracts.\n\n## Core concepts\n\n- **Quote** — a real-time price lock for a currency pair. No customer identity needed at this step. Quotes expire after a short window.\n- **Order** — binds a quote to a customer and executes the full flow: receive origin funds → convert at the quoted rate → pay out to the destination address.\n- **Deposit** — how funds enter the platform. For crypto, the API returns an on-chain address; for fiat, a reference/IBAN. Once the inbound transfer is detected, the user's balance is credited.\n- **Withdrawal** — a standalone payout from an existing balance to a fiat or crypto destination. For trade-then-pay flows, use an order instead.\n\n## Integration surface\n\n- Quotes and pricing\n- Orders and deposits (create, list, and track status)\n- Balances\n- Payouts — via an order's destination leg or directly from balance with `POST /v1/withdrawals`\n- KYC/KYB-related endpoints where enabled for your workspace\n- Webhooks (register a callback URL and handle event payloads)\n\n## Authentication\n\nRequests use OAuth 2.0. Obtain an access token by POSTing to:\n\n`https://auth2.virtuabroker.com/realms/cryptobot/protocol/openid-connect/token`\n\n### Request Details\n\n- **Content-Type:** `application/x-www-form-urlencoded`\n- **Request Body Parameters:**\n  - `client_id`: Your client identifier (provided by VirtuaBroker)\n  - `username`: Your account's username (provided by VirtuaBroker)\n  - `password`: Your account's password (provided by VirtuaBroker)\n  - `grant_type`: Use `password` as the grant type\n\nUpon successful authentication, you will receive an `access_token` which must be included in the Authorization header as a Bearer token for all subsequent API calls.\n\n### Example Code Snippet\n\nHere's a simple example of how to request an access token using Node.js and axios:\n\n```javascript\nimport axios from 'axios';\nimport qs from 'qs';\n\nconst authUrl = 'https://auth2.virtuabroker.com/realms/cryptobot/protocol/openid-connect/token';\nconst clientId = 'your-client-id';\nconst username = 'your-username';\nconst password = 'your-password';\n\nconst requestToken = async () => {\n  const requestBody = qs.stringify({\n    client_id: clientId,\n    username,\n    password,\n    grant_type: 'password'\n  });\n\n  try {\n    const response = await axios.post(authUrl, requestBody, {\n      headers: { 'Content-Type': 'application/x-www-form-urlencoded' }\n    });\n    \n    const accessToken = response.data.access_token;\n    console.log('Access Token:', accessToken);\n    return accessToken;\n  } catch (error) {\n    console.error('Failed to fetch token', error);\n    throw error;\n  }\n};\n```\n\n### Idempotent writes (Idempotency-Key)\n\nRetrying a write after a network timeout must never create a duplicate.\n\n**The three money write routes — `POST /v1/orders`, `POST /v1/deposits` and `POST /v1/withdrawals` — share ONE strict contract:**\n\n- **Key format** — 1 to 128 characters of letters, digits, dash or underscore, starting with a letter or digit, sent exactly once per request. A present-but-malformed key is rejected with `400` before anything happens — it is never silently ignored.\n- **Scope** — keys are scoped to your workspace, account and endpoint. Another workspace using the same key is unaffected. Reusing your key on a **different endpoint** is rejected with `409`.\n- **Replay** — repeating the same key with the **same payload** returns the original response unchanged, and exactly one resource ever exists. Reusing the key with a **different payload** is rejected with `409`.\n- **Concurrency** — two simultaneous identical requests produce exactly one resource. While the first attempt is still executing, the retry either returns the same response or answers `409` (in progress); once the first attempt completes **successfully**, the same key returns its result.\n- **Failed attempts consume the key** — when a keyed request is ACCEPTED and then fails during execution (insufficient funds, a rejected payout), or its outcome cannot be determined, the key is NOT released: further requests with it keep answering `409`, and no expiry ever frees it. Verify the current state first — list the resource (`GET`), or look it up by your own `externalReference` on deposits — then retry with a **new key**. A key is the retry token of ONE attempt, never a reusable slot. (Only a `400` from request validation leaves the key unused, because it is refused before anything is reserved. A `400` raised while executing an already-accepted request — an amount outside the allowed range, for example — consumes the key like any other execution failure.)\n- **TTL** — a key whose attempt SUCCEEDED replays for 24 hours; after that, the same key starts a fresh request. A key burned by a failed attempt is never released by that expiry: only the operator releases it, after verifying what the failed attempt did.\n\n**Resource ids are always server-generated and never derived from your key.** Order and deposit ids match `^(PRE)?[A-Z0-9]{12}$` (withdrawal ids are UUIDs), and the deposit's bank `referenceCode` follows the same server-generated id — an `Idempotency-Key` never becomes an id or a bank reference.\n\n**Two other surfaces accept the header with their own, narrower semantics — documented in their sections, not by the contract above:** `POST /v1/aml-screenings` (keys scoped to your workspace; replay of the original screening; `409` on payload mismatch) and the conversation mutations (the header is **required** there and scoped per endpoint).\n\n### Integration testing\n\nIntegrate end to end against non-production data on the **stage** environment (`https://api-stage.virtuabroker.com`) before going live. Inbound transfers can be simulated on stage so you can exercise the full deposit → order → payout lifecycle — ask your integration contact to enable this for your workspace.\n\n### Further Assistance\n\nIf you are interested in integrating with the VirtuaBroker platform or need specific credentials for authentication, please contact our support team at [integrations@virtuabroker.com](mailto:integrations@virtuabroker.com). We are here to assist you with any questions or issues you may encounter during the integration process.\n",
    "x-logo": {
      "url": "https://storage.googleapis.com/vb-static-assets/assets/virtuaBrokerEmail.png",
      "altText": "VirtuaBroker logo"
    }
  },
  "servers": [
    {
      "url": "https://api.virtuabroker.com",
      "description": "Production server"
    },
    {
      "url": "https://api-stage.virtuabroker.com",
      "description": "Stage server"
    }
  ],
  "components": {
    "securitySchemes": {
      "oauth2": {
        "type": "oauth2",
        "flows": {
          "password": {
            "tokenUrl": "https://auth2.virtuabroker.com/realms/cryptobot/protocol/openid-connect/token",
            "scopes": {}
          }
        }
      }
    },
    "schemas": {
      "CreateKycRequest": {
        "type": "object",
        "properties": {
          "body": {
            "type": "object",
            "properties": {
              "userEmail": {
                "type": "string",
                "minLength": 1,
                "maxLength": 254,
                "format": "email",
                "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                "description": "User email. Must match your workspace account onboarding rules."
              },
              "userPhone": {
                "type": "string",
                "description": "Optional. Required for some corridors (e.g. India, Turkey). Format: country code with `+`, a hyphen, then the number (e.g. +44-7700900123)."
              },
              "externalUserId": {
                "type": "string",
                "description": "Optional. Your own user identifier in your system, if you track users externally."
              },
              "countryCode": {
                "type": "string",
                "enum": [
                  "AW",
                  "AF",
                  "AO",
                  "AI",
                  "AX",
                  "AL",
                  "AD",
                  "AE",
                  "AR",
                  "AM",
                  "AS",
                  "AQ",
                  "TF",
                  "AG",
                  "AU",
                  "AT",
                  "AZ",
                  "BI",
                  "BE",
                  "BJ",
                  "BQ",
                  "BF",
                  "BD",
                  "BG",
                  "BH",
                  "BS",
                  "BA",
                  "BL",
                  "BY",
                  "BZ",
                  "BM",
                  "BO",
                  "BR",
                  "BB",
                  "BN",
                  "BT",
                  "BV",
                  "BW",
                  "CF",
                  "CA",
                  "CC",
                  "CH",
                  "CL",
                  "CN",
                  "CI",
                  "CM",
                  "CD",
                  "CG",
                  "CK",
                  "CO",
                  "KM",
                  "CV",
                  "CR",
                  "CU",
                  "CW",
                  "CX",
                  "KY",
                  "CY",
                  "CZ",
                  "DE",
                  "DJ",
                  "DM",
                  "DK",
                  "DO",
                  "DZ",
                  "EC",
                  "EG",
                  "ER",
                  "EH",
                  "ES",
                  "EE",
                  "ET",
                  "FI",
                  "FJ",
                  "FK",
                  "FR",
                  "FO",
                  "FM",
                  "GA",
                  "GB",
                  "GE",
                  "GG",
                  "GH",
                  "GI",
                  "GN",
                  "GP",
                  "GM",
                  "GW",
                  "GQ",
                  "GR",
                  "GD",
                  "GL",
                  "GT",
                  "GF",
                  "GU",
                  "GY",
                  "HK",
                  "HM",
                  "HN",
                  "HR",
                  "HT",
                  "HU",
                  "ID",
                  "IM",
                  "IN",
                  "IO",
                  "IE",
                  "IR",
                  "IQ",
                  "IS",
                  "IL",
                  "IT",
                  "JM",
                  "JE",
                  "JO",
                  "JP",
                  "KZ",
                  "KE",
                  "KG",
                  "KH",
                  "KI",
                  "KN",
                  "KR",
                  "KW",
                  "LA",
                  "LB",
                  "LR",
                  "LY",
                  "LC",
                  "LI",
                  "LK",
                  "LS",
                  "LT",
                  "LU",
                  "LV",
                  "MO",
                  "MF",
                  "MA",
                  "MC",
                  "MD",
                  "MG",
                  "MV",
                  "MX",
                  "MH",
                  "MK",
                  "ML",
                  "MT",
                  "MM",
                  "ME",
                  "MN",
                  "MP",
                  "MZ",
                  "MR",
                  "MS",
                  "MQ",
                  "MU",
                  "MW",
                  "MY",
                  "YT",
                  "NA",
                  "NC",
                  "NE",
                  "NF",
                  "NG",
                  "NI",
                  "NU",
                  "NL",
                  "NO",
                  "NP",
                  "NR",
                  "NZ",
                  "OM",
                  "PK",
                  "PA",
                  "PN",
                  "PE",
                  "PH",
                  "PW",
                  "PG",
                  "PL",
                  "PR",
                  "KP",
                  "PT",
                  "PY",
                  "PS",
                  "PF",
                  "QA",
                  "RE",
                  "RO",
                  "RU",
                  "RW",
                  "SA",
                  "SD",
                  "SN",
                  "SG",
                  "GS",
                  "SH",
                  "SJ",
                  "SB",
                  "SL",
                  "SV",
                  "SM",
                  "SO",
                  "PM",
                  "RS",
                  "SS",
                  "ST",
                  "SR",
                  "SK",
                  "SI",
                  "SE",
                  "SZ",
                  "SX",
                  "SC",
                  "SY",
                  "TC",
                  "TD",
                  "TG",
                  "TH",
                  "TJ",
                  "TK",
                  "TM",
                  "TL",
                  "TO",
                  "TT",
                  "TN",
                  "TR",
                  "TV",
                  "TW",
                  "TZ",
                  "UG",
                  "UA",
                  "UM",
                  "UY",
                  "US",
                  "UZ",
                  "VA",
                  "VC",
                  "VE",
                  "VG",
                  "VI",
                  "VN",
                  "VU",
                  "WF",
                  "WS",
                  "YE",
                  "ZA",
                  "ZM",
                  "ZW"
                ],
                "description": "ISO 3166-1 alpha-2 issuing country (e.g. ES, GB). Pre-selects the country in the hosted verification widget; the backend maps it to ISO alpha-3 for the provider WebSDK."
              },
              "sendOTPMail": {
                "type": "boolean",
                "description": "Whether to send an OTP email to the user. Exact behavior follows your integration contract with VirtuaBroker."
              },
              "type": {
                "type": "string",
                "enum": [
                  "INDIVIDUAL",
                  "BUSINESS"
                ],
                "description": "KYC category: `INDIVIDUAL` for a natural person or `BUSINESS` for a business flow, per your product setup."
              },
              "language": {
                "type": "string",
                "description": "Optional. Widget UI language and access-token locale (e.g. en, es, fr). If omitted or blank, `en` is used. Use codes supported by the verification provider WebSDK."
              },
              "theme": {
                "type": "string",
                "enum": [
                  "dark",
                  "light"
                ],
                "description": "Optional. Hosted widget theme for the provider WebSDK. **Default: dark** (omit or send `dark`). Send `light` only for light mode."
              },
              "blank": {
                "type": "boolean",
                "description": "Optional. If `true`, the hosted widget page uses blank framing (minimal chrome: no extra branding, borders, or padding around the iframe)."
              },
              "width": {
                "type": "string",
                "description": "Optional. CSS width for the widget container on the hosted page (e.g. `100%`, `800px`, `1200px`)."
              },
              "height": {
                "type": "string",
                "description": "Optional. CSS height for the widget container on the hosted page (e.g. `100vh`, `600px`, `auto`)."
              },
              "forceMobile": {
                "type": "boolean",
                "description": "Optional. If `true`, forces the verification widget to render its mobile layout regardless of the screen width."
              },
              "successUrl": {
                "type": "string",
                "format": "uri",
                "description": "Optional. URL the user is redirected to after completing verification, where the hosted verification flow supports it. Ignored when no redirect is supported."
              },
              "errorUrl": {
                "type": "string",
                "format": "uri",
                "description": "Optional. URL the user is redirected to if verification fails/cancels, where the provider supports it. Ignored by providers that expose no redirect."
              }
            },
            "required": [
              "userEmail",
              "countryCode",
              "sendOTPMail",
              "type"
            ],
            "description": "Request body for starting or continuing KYC. Required fields are sent on every call; optional fields tune the hosted verification widget and token locale."
          },
          "query": {
            "type": "object",
            "properties": {}
          },
          "params": {
            "type": "object",
            "properties": {}
          }
        },
        "required": [
          "body",
          "query",
          "params"
        ]
      },
      "CreateKycResponse": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean",
            "description": "Whether the API call completed successfully."
          },
          "kycUrl": {
            "type": "string",
            "description": "Present when the user must complete verification: open this URL in a browser or WebView to run the hosted widget. Omitted when the user is already approved or no widget step is needed."
          },
          "kycId": {
            "type": "string",
            "description": "Your KYC reference ID, used for support and correlation."
          },
          "userEmail": {
            "type": "string",
            "description": "Echo of the user email from the request."
          },
          "missingInfo": {
            "type": "object",
            "properties": {
              "firstName": {
                "type": "string",
                "description": "First name"
              },
              "lastName": {
                "type": "string",
                "description": "Last name"
              },
              "email": {
                "type": "string",
                "description": "Email"
              },
              "phone": {
                "type": "string",
                "description": "Phone"
              }
            },
            "description": "If present, fields the user still needs to provide before verification can continue."
          },
          "status": {
            "type": "string",
            "enum": [
              "PENDING",
              "REVIEWING",
              "IN_PROGRESS",
              "APPROVED",
              "REJECTED",
              "NOT_AVAILABLE"
            ],
            "description": "Current KYC status in the external API enum (e.g. PENDING, APPROVED)."
          },
          "missingFields": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Identity fields the user must still provide (via POST /v1/kyc/data) before verification can start. Present when the configured provider needs profile data that is not yet on file; when non-empty, `kycUrl` is omitted."
          },
          "errorMessage": {
            "type": "string",
            "description": "Human-readable error when `success` is false or the operation could not complete."
          }
        },
        "required": [
          "success"
        ],
        "description": "Response from POST /v1/kyc: outcome, optional widget URL, and verification status."
      },
      "GetKycRequest": {
        "type": "object",
        "properties": {
          "body": {
            "type": "object",
            "properties": {},
            "additionalProperties": false
          },
          "query": {
            "type": "object",
            "properties": {},
            "additionalProperties": false
          },
          "params": {
            "type": "object",
            "properties": {
              "accountEmail": {
                "type": "string",
                "minLength": 1,
                "maxLength": 254,
                "format": "email",
                "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                "description": "Email address"
              }
            },
            "required": [
              "accountEmail"
            ]
          }
        },
        "required": [
          "body",
          "query",
          "params"
        ]
      },
      "GetKycResponse": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string",
            "enum": [
              "PENDING",
              "REVIEWING",
              "IN_PROGRESS",
              "APPROVED",
              "REJECTED",
              "NOT_AVAILABLE"
            ]
          },
          "missingFields": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "accountId": {
            "type": "string",
            "description": "Account id to use for account-scoped resources (deposit methods, deposits, orders). Equals the email for individual users; for organisation representatives it is the organisation account id. Absent when no account exists yet for this email."
          }
        },
        "required": [
          "status"
        ]
      },
      "GetPairsRequest": {
        "type": "object",
        "properties": {},
        "description": "Request schema for getting currency pairs"
      },
      "GetPairsResponse": {
        "type": "object",
        "properties": {
          "pairs": {
            "type": "array",
            "items": {
              "type": "string",
              "pattern": "^[A-Z]{3,5}\\/[A-Z]{3,5}$",
              "description": "Currency pair in the format BASE/QUOTE"
            },
            "description": "List of currency pairs"
          }
        },
        "required": [
          "pairs"
        ],
        "description": "Response schema for getting currency pairs",
        "example": {
          "pairs": [
            "USDT/EUR",
            "USDC/EUR"
          ]
        }
      },
      "CreateQuotesRequest": {
        "anyOf": [
          {
            "type": "object",
            "properties": {
              "originCurrency": {
                "anyOf": [
                  {
                    "type": "string",
                    "enum": [
                      "EUR",
                      "USD",
                      "GBP",
                      "BRL",
                      "MXN",
                      "ARS",
                      "COP",
                      "PEN",
                      "NGN",
                      "KES",
                      "TZS",
                      "UGX",
                      "RWF",
                      "MWK",
                      "ZMW",
                      "XOF",
                      "XAF",
                      "BWP"
                    ]
                  },
                  {
                    "type": "string",
                    "enum": [
                      "USDC",
                      "USDT",
                      "CUSD",
                      "BTC",
                      "ETH",
                      "POL",
                      "SOL",
                      "TRX",
                      "AVAX",
                      "XRP",
                      "BNB"
                    ]
                  }
                ],
                "description": "The currency code of the origin currency",
                "examples": [
                  "EUR"
                ]
              },
              "originRail": {
                "type": "string",
                "enum": [
                  "BALANCE",
                  "SEPA",
                  "BTC",
                  "ETH",
                  "MATIC",
                  "POLYGON",
                  "CELO",
                  "TRON",
                  "SOLANA",
                  "ARBITRUM",
                  "OPTIMISM",
                  "AVALANCHE",
                  "BSC",
                  "BASE",
                  "XRP",
                  "PIX_BR",
                  "UPI",
                  "IMPS",
                  "TRY_BANK_TRANSFER",
                  "AED_BANK_TRANSFER",
                  "SPEI",
                  "IDR_BANK_TRANSFER",
                  "CREDIT_CARD",
                  "THAI_QR",
                  "VIET_QR",
                  "GCASH",
                  "ARGENTINA_BANK_TRANSFER",
                  "PSE",
                  "CLABE",
                  "PIX",
                  "BANK_DEPOSIT_COL",
                  "BANK_DEPOSIT_AR",
                  "BANK_DEPOSIT_CL",
                  "BANK_DEPOSIT_PE",
                  "BANK_DEPOSIT_BO",
                  "BANK_DEPOSIT_BR",
                  "BANK_DEPOSIT_NG",
                  "BANK_DEPOSIT_KE",
                  "BANK_DEPOSIT_GH",
                  "BANK_DEPOSIT_ZA",
                  "BANK_DEPOSIT_TZ",
                  "BANK_DEPOSIT_UG",
                  "BANK_DEPOSIT_RW",
                  "BANK_DEPOSIT_MW",
                  "BANK_DEPOSIT_ZM",
                  "BANK_DEPOSIT_BW",
                  "BANK_DEPOSIT_CD",
                  "BANK_DEPOSIT_XOF",
                  "BANK_DEPOSIT_XAF",
                  "MOBILE_MONEY_NG",
                  "MOBILE_MONEY_KE",
                  "MOBILE_MONEY_GH",
                  "MOBILE_MONEY_ZA",
                  "MOBILE_MONEY_TZ",
                  "MOBILE_MONEY_UG",
                  "MOBILE_MONEY_RW",
                  "MOBILE_MONEY_MW",
                  "MOBILE_MONEY_ZM",
                  "MOBILE_MONEY_BW",
                  "MOBILE_MONEY_CD",
                  "MOBILE_MONEY_XOF",
                  "MOBILE_MONEY_XAF",
                  "ACH_US",
                  "GBP_BANK_TRANSFER"
                ],
                "description": "The rail of the origin currency. Crypto origin rails use NETWORK names (e.g. `SOLANA` for SOL, `MATIC` for POL/USDC, `BSC` for BNB)."
              },
              "destinationCurrency": {
                "type": "string",
                "enum": [
                  "EUR",
                  "USD",
                  "GBP",
                  "BRL",
                  "COP",
                  "MXN",
                  "ARS",
                  "CLP",
                  "VES",
                  "TWD",
                  "BOB",
                  "PEN",
                  "NGN",
                  "KES",
                  "ZAR",
                  "TZS",
                  "UGX",
                  "RWF",
                  "MWK",
                  "ZMW",
                  "XOF",
                  "XAF",
                  "BWP",
                  "HKD",
                  "CNY",
                  "USDC",
                  "USDT",
                  "ETH",
                  "BTC",
                  "MATIC",
                  "SOL",
                  "TRX",
                  "AVAX",
                  "DOT",
                  "XRP",
                  "POL",
                  "ADA",
                  "ALGO"
                ],
                "description": "The currency code of the destination currency",
                "examples": [
                  "VES",
                  "BRL",
                  "USDC"
                ]
              },
              "destinationRail": {
                "type": "string",
                "enum": [
                  "SEPA",
                  "ETH",
                  "BTC",
                  "MATIC",
                  "SOL",
                  "TRON",
                  "XRP",
                  "BSC",
                  "AVALANCHE",
                  "ARBITRUM",
                  "OPTIMISM",
                  "PIX_BR",
                  "PHONE_DEPOSIT_VEN",
                  "PHONE_DEPOSIT_MX",
                  "PHONE_DEPOSIT_AR",
                  "PHONE_DEPOSIT_IN",
                  "PHONE_DEPOSIT_VN",
                  "BANK_DEPOSIT_VEN",
                  "BANK_DEPOSIT_BR",
                  "BANK_DEPOSIT_MX",
                  "BALANCE",
                  "CELO",
                  "BASE",
                  "UPI",
                  "IMPS",
                  "THAI_QR",
                  "VIET_QR",
                  "GCASH",
                  "ARGENTINA_BANK_TRANSFER",
                  "PSE",
                  "BANK_DEPOSIT_COL",
                  "BRE_B_COP",
                  "ACH_COP",
                  "BANK_DEPOSIT_TW",
                  "BANK_DEPOSIT_AR",
                  "BANK_DEPOSIT_CL",
                  "BANK_DEPOSIT_BO",
                  "BANK_DEPOSIT_PE",
                  "BANK_DEPOSIT_PEN",
                  "BANK_DEPOSIT_NG",
                  "BANK_DEPOSIT_KE",
                  "BANK_DEPOSIT_GH",
                  "BANK_DEPOSIT_ZA",
                  "BANK_DEPOSIT_TZ",
                  "BANK_DEPOSIT_UG",
                  "BANK_DEPOSIT_RW",
                  "BANK_DEPOSIT_MW",
                  "BANK_DEPOSIT_ZM",
                  "BANK_DEPOSIT_BW",
                  "BANK_DEPOSIT_CD",
                  "BANK_DEPOSIT_XOF",
                  "BANK_DEPOSIT_XAF",
                  "MOBILE_MONEY_NG",
                  "MOBILE_MONEY_KE",
                  "MOBILE_MONEY_GH",
                  "MOBILE_MONEY_ZA",
                  "MOBILE_MONEY_TZ",
                  "MOBILE_MONEY_UG",
                  "MOBILE_MONEY_RW",
                  "MOBILE_MONEY_MW",
                  "MOBILE_MONEY_ZM",
                  "MOBILE_MONEY_BW",
                  "MOBILE_MONEY_CD",
                  "MOBILE_MONEY_XOF",
                  "MOBILE_MONEY_XAF",
                  "BANK_DEPOSIT_HK",
                  "BANK_DEPOSIT_CN",
                  "GBP_BANK_TRANSFER",
                  "ACH_US",
                  "LINKED_BANK_ACCOUNT"
                ],
                "description": "The rail of the destination currency. Solana is the one asymmetric spelling: use `SOL` here (the origin side uses the network name `SOLANA`) — both refer to the Solana network. Other crypto destination rails use network names (`ETH`, `MATIC`, `TRON`, `XRP`, `BSC`, `AVALANCHE`, `ARBITRUM`, `OPTIMISM`, `BASE`)."
              },
              "locale": {
                "type": "string",
                "enum": [
                  "en",
                  "es",
                  "pt",
                  "it",
                  "fr",
                  "de"
                ],
                "description": "The locale of the user"
              },
              "customerId": {
                "type": "string",
                "description": "Account id the quote is for (External API on-behalf quotes)",
                "examples": [
                  "d290f1ee-6c54-4b01-90e6-d701748f0851"
                ]
              },
              "customerEmail": {
                "type": "string",
                "description": "Account email the quote is for (External API on-behalf quotes)",
                "examples": [
                  "customer@example.com"
                ]
              },
              "creatorMarkup": {
                "type": "number",
                "minimum": 0,
                "exclusiveMinimum": true,
                "maximum": 0.1,
                "description": "Creator markup as a fraction added on top of the workspace fees (App API only)"
              },
              "originAmount": {
                "type": "number",
                "minimum": 0,
                "exclusiveMinimum": true,
                "description": "The amount in the origin currency (use either originAmount or destinationAmount)",
                "examples": [
                  100,
                  250,
                  500
                ]
              }
            },
            "required": [
              "originCurrency",
              "destinationCurrency",
              "originAmount"
            ],
            "description": "Quote priced from the amount you send/collect in the origin currency (set `originAmount`).",
            "title": "QuoteByOriginAmount"
          },
          {
            "type": "object",
            "properties": {
              "originCurrency": {
                "anyOf": [
                  {
                    "type": "string",
                    "enum": [
                      "EUR",
                      "USD",
                      "GBP",
                      "BRL",
                      "MXN",
                      "ARS",
                      "COP",
                      "PEN",
                      "NGN",
                      "KES",
                      "TZS",
                      "UGX",
                      "RWF",
                      "MWK",
                      "ZMW",
                      "XOF",
                      "XAF",
                      "BWP"
                    ]
                  },
                  {
                    "type": "string",
                    "enum": [
                      "USDC",
                      "USDT",
                      "CUSD",
                      "BTC",
                      "ETH",
                      "POL",
                      "SOL",
                      "TRX",
                      "AVAX",
                      "XRP",
                      "BNB"
                    ]
                  }
                ],
                "description": "The currency code of the origin currency",
                "examples": [
                  "EUR"
                ]
              },
              "originRail": {
                "type": "string",
                "enum": [
                  "BALANCE",
                  "SEPA",
                  "BTC",
                  "ETH",
                  "MATIC",
                  "POLYGON",
                  "CELO",
                  "TRON",
                  "SOLANA",
                  "ARBITRUM",
                  "OPTIMISM",
                  "AVALANCHE",
                  "BSC",
                  "BASE",
                  "XRP",
                  "PIX_BR",
                  "UPI",
                  "IMPS",
                  "TRY_BANK_TRANSFER",
                  "AED_BANK_TRANSFER",
                  "SPEI",
                  "IDR_BANK_TRANSFER",
                  "CREDIT_CARD",
                  "THAI_QR",
                  "VIET_QR",
                  "GCASH",
                  "ARGENTINA_BANK_TRANSFER",
                  "PSE",
                  "CLABE",
                  "PIX",
                  "BANK_DEPOSIT_COL",
                  "BANK_DEPOSIT_AR",
                  "BANK_DEPOSIT_CL",
                  "BANK_DEPOSIT_PE",
                  "BANK_DEPOSIT_BO",
                  "BANK_DEPOSIT_BR",
                  "BANK_DEPOSIT_NG",
                  "BANK_DEPOSIT_KE",
                  "BANK_DEPOSIT_GH",
                  "BANK_DEPOSIT_ZA",
                  "BANK_DEPOSIT_TZ",
                  "BANK_DEPOSIT_UG",
                  "BANK_DEPOSIT_RW",
                  "BANK_DEPOSIT_MW",
                  "BANK_DEPOSIT_ZM",
                  "BANK_DEPOSIT_BW",
                  "BANK_DEPOSIT_CD",
                  "BANK_DEPOSIT_XOF",
                  "BANK_DEPOSIT_XAF",
                  "MOBILE_MONEY_NG",
                  "MOBILE_MONEY_KE",
                  "MOBILE_MONEY_GH",
                  "MOBILE_MONEY_ZA",
                  "MOBILE_MONEY_TZ",
                  "MOBILE_MONEY_UG",
                  "MOBILE_MONEY_RW",
                  "MOBILE_MONEY_MW",
                  "MOBILE_MONEY_ZM",
                  "MOBILE_MONEY_BW",
                  "MOBILE_MONEY_CD",
                  "MOBILE_MONEY_XOF",
                  "MOBILE_MONEY_XAF",
                  "ACH_US",
                  "GBP_BANK_TRANSFER"
                ],
                "description": "The rail of the origin currency. Crypto origin rails use NETWORK names (e.g. `SOLANA` for SOL, `MATIC` for POL/USDC, `BSC` for BNB)."
              },
              "destinationCurrency": {
                "type": "string",
                "enum": [
                  "EUR",
                  "USD",
                  "GBP",
                  "BRL",
                  "COP",
                  "MXN",
                  "ARS",
                  "CLP",
                  "VES",
                  "TWD",
                  "BOB",
                  "PEN",
                  "NGN",
                  "KES",
                  "ZAR",
                  "TZS",
                  "UGX",
                  "RWF",
                  "MWK",
                  "ZMW",
                  "XOF",
                  "XAF",
                  "BWP",
                  "HKD",
                  "CNY",
                  "USDC",
                  "USDT",
                  "ETH",
                  "BTC",
                  "MATIC",
                  "SOL",
                  "TRX",
                  "AVAX",
                  "DOT",
                  "XRP",
                  "POL",
                  "ADA",
                  "ALGO"
                ],
                "description": "The currency code of the destination currency",
                "examples": [
                  "VES",
                  "BRL",
                  "USDC"
                ]
              },
              "destinationRail": {
                "type": "string",
                "enum": [
                  "SEPA",
                  "ETH",
                  "BTC",
                  "MATIC",
                  "SOL",
                  "TRON",
                  "XRP",
                  "BSC",
                  "AVALANCHE",
                  "ARBITRUM",
                  "OPTIMISM",
                  "PIX_BR",
                  "PHONE_DEPOSIT_VEN",
                  "PHONE_DEPOSIT_MX",
                  "PHONE_DEPOSIT_AR",
                  "PHONE_DEPOSIT_IN",
                  "PHONE_DEPOSIT_VN",
                  "BANK_DEPOSIT_VEN",
                  "BANK_DEPOSIT_BR",
                  "BANK_DEPOSIT_MX",
                  "BALANCE",
                  "CELO",
                  "BASE",
                  "UPI",
                  "IMPS",
                  "THAI_QR",
                  "VIET_QR",
                  "GCASH",
                  "ARGENTINA_BANK_TRANSFER",
                  "PSE",
                  "BANK_DEPOSIT_COL",
                  "BRE_B_COP",
                  "ACH_COP",
                  "BANK_DEPOSIT_TW",
                  "BANK_DEPOSIT_AR",
                  "BANK_DEPOSIT_CL",
                  "BANK_DEPOSIT_BO",
                  "BANK_DEPOSIT_PE",
                  "BANK_DEPOSIT_PEN",
                  "BANK_DEPOSIT_NG",
                  "BANK_DEPOSIT_KE",
                  "BANK_DEPOSIT_GH",
                  "BANK_DEPOSIT_ZA",
                  "BANK_DEPOSIT_TZ",
                  "BANK_DEPOSIT_UG",
                  "BANK_DEPOSIT_RW",
                  "BANK_DEPOSIT_MW",
                  "BANK_DEPOSIT_ZM",
                  "BANK_DEPOSIT_BW",
                  "BANK_DEPOSIT_CD",
                  "BANK_DEPOSIT_XOF",
                  "BANK_DEPOSIT_XAF",
                  "MOBILE_MONEY_NG",
                  "MOBILE_MONEY_KE",
                  "MOBILE_MONEY_GH",
                  "MOBILE_MONEY_ZA",
                  "MOBILE_MONEY_TZ",
                  "MOBILE_MONEY_UG",
                  "MOBILE_MONEY_RW",
                  "MOBILE_MONEY_MW",
                  "MOBILE_MONEY_ZM",
                  "MOBILE_MONEY_BW",
                  "MOBILE_MONEY_CD",
                  "MOBILE_MONEY_XOF",
                  "MOBILE_MONEY_XAF",
                  "BANK_DEPOSIT_HK",
                  "BANK_DEPOSIT_CN",
                  "GBP_BANK_TRANSFER",
                  "ACH_US",
                  "LINKED_BANK_ACCOUNT"
                ],
                "description": "The rail of the destination currency. Solana is the one asymmetric spelling: use `SOL` here (the origin side uses the network name `SOLANA`) — both refer to the Solana network. Other crypto destination rails use network names (`ETH`, `MATIC`, `TRON`, `XRP`, `BSC`, `AVALANCHE`, `ARBITRUM`, `OPTIMISM`, `BASE`)."
              },
              "locale": {
                "type": "string",
                "enum": [
                  "en",
                  "es",
                  "pt",
                  "it",
                  "fr",
                  "de"
                ],
                "description": "The locale of the user"
              },
              "customerId": {
                "type": "string",
                "description": "Account id the quote is for (External API on-behalf quotes)",
                "examples": [
                  "d290f1ee-6c54-4b01-90e6-d701748f0851"
                ]
              },
              "customerEmail": {
                "type": "string",
                "description": "Account email the quote is for (External API on-behalf quotes)",
                "examples": [
                  "customer@example.com"
                ]
              },
              "creatorMarkup": {
                "type": "number",
                "minimum": 0,
                "exclusiveMinimum": true,
                "maximum": 0.1,
                "description": "Creator markup as a fraction added on top of the workspace fees (App API only)"
              },
              "destinationAmount": {
                "type": "number",
                "minimum": 0,
                "exclusiveMinimum": true,
                "description": "The amount in the destination currency",
                "examples": [
                  85,
                  200,
                  450
                ]
              }
            },
            "required": [
              "originCurrency",
              "destinationCurrency",
              "destinationAmount"
            ],
            "description": "Quote priced from the amount the beneficiary receives in the destination currency (set `destinationAmount`).",
            "title": "QuoteByDestinationAmount"
          }
        ],
        "description": "Request schema for creating a quote"
      },
      "CreateQuotesResponse": {
        "type": "object",
        "properties": {
          "quoteId": {
            "type": "string",
            "format": "uuid",
            "description": "The unique identifier of the created quote",
            "examples": [
              "123e4567-e89b-12d3-a456-426614174000",
              "987f6543-a21c-45d6-b789-012345678901"
            ]
          },
          "originCurrency": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "EUR",
                  "USD",
                  "GBP",
                  "BRL",
                  "MXN",
                  "ARS",
                  "COP",
                  "PEN",
                  "NGN",
                  "KES",
                  "TZS",
                  "UGX",
                  "RWF",
                  "MWK",
                  "ZMW",
                  "XOF",
                  "XAF",
                  "BWP"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "USDC",
                  "USDT",
                  "CUSD",
                  "BTC",
                  "ETH",
                  "POL",
                  "SOL",
                  "TRX",
                  "AVAX",
                  "XRP",
                  "BNB"
                ]
              }
            ],
            "description": "The currency code of the origin currency",
            "examples": [
              "EUR"
            ]
          },
          "originNetwork": {
            "type": "string",
            "enum": [
              "BTC",
              "ETH",
              "MATIC",
              "CELO",
              "SOLANA",
              "TRON",
              "BSC",
              "XRP",
              "ARBITRUM",
              "OPTIMISM",
              "AVALANCHE",
              "BASE",
              "CARDANO"
            ],
            "description": "The network of the origin currency if it is crypto",
            "examples": [
              "MATIC",
              "ETH"
            ]
          },
          "originAmount": {
            "type": "number",
            "minimum": 0,
            "exclusiveMinimum": true,
            "description": "The amount in the origin currency (use either originAmount or destinationAmount)",
            "examples": [
              100,
              250,
              500
            ]
          },
          "destinationCurrency": {
            "type": "string",
            "enum": [
              "EUR",
              "USD",
              "GBP",
              "BRL",
              "COP",
              "MXN",
              "ARS",
              "CLP",
              "VES",
              "TWD",
              "BOB",
              "PEN",
              "NGN",
              "KES",
              "ZAR",
              "TZS",
              "UGX",
              "RWF",
              "MWK",
              "ZMW",
              "XOF",
              "XAF",
              "BWP",
              "HKD",
              "CNY",
              "USDC",
              "USDT",
              "ETH",
              "BTC",
              "MATIC",
              "SOL",
              "TRX",
              "AVAX",
              "DOT",
              "XRP",
              "POL",
              "ADA",
              "ALGO"
            ],
            "description": "The currency code of the destination currency",
            "examples": [
              "BRL",
              "VES",
              "USDC",
              "ETH"
            ]
          },
          "destinationNetwork": {
            "type": "string",
            "enum": [
              "BTC",
              "ETH",
              "MATIC",
              "CELO",
              "SOLANA",
              "TRON",
              "BSC",
              "XRP",
              "ARBITRUM",
              "OPTIMISM",
              "AVALANCHE",
              "BASE",
              "CARDANO"
            ],
            "description": "The network of the destination currency if it is crypto",
            "examples": [
              "MATIC",
              "ETH",
              "CELO"
            ]
          },
          "destinationAmount": {
            "type": "number",
            "minimum": 0,
            "exclusiveMinimum": true,
            "description": "The amount in the destination currency (use either originAmount or destinationAmount)",
            "examples": [
              85,
              200,
              450
            ]
          },
          "price": {
            "type": "number",
            "minimum": 0,
            "exclusiveMinimum": true,
            "description": "The exchange rate price for the quote based on the symbol ex: USDC/EUR",
            "examples": [
              0.85,
              0.92,
              1.05
            ]
          },
          "conversionRate": {
            "type": "number",
            "minimum": 0,
            "exclusiveMinimum": true,
            "description": "The conversion rate price for the quote representing 1 originCurrency = X destinationCurrency",
            "examples": [
              0.85,
              0.92,
              1.05
            ]
          },
          "pair": {
            "type": "string",
            "description": "The pair of the quote",
            "examples": [
              "USDC/EUR",
              "BRL/EUR",
              "COP/EUR"
            ]
          },
          "fee": {
            "type": "number",
            "minimum": 0,
            "description": "The fee associated with the order: (originAmount - fee) / price = destinationAmount",
            "examples": [
              1.5,
              2,
              3.5
            ]
          },
          "expectedGasFee": {
            "type": "number",
            "description": "The expected fee associated with the blockchain transaction",
            "examples": [
              1.5,
              2.2,
              3
            ]
          },
          "feeCurrency": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "EUR",
                  "USD",
                  "GBP",
                  "BRL",
                  "MXN",
                  "ARS",
                  "COP",
                  "PEN",
                  "NGN",
                  "KES",
                  "TZS",
                  "UGX",
                  "RWF",
                  "MWK",
                  "ZMW",
                  "XOF",
                  "XAF",
                  "BWP"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "USDC",
                  "USDT",
                  "CUSD",
                  "BTC",
                  "ETH",
                  "POL",
                  "SOL",
                  "TRX",
                  "AVAX",
                  "XRP",
                  "BNB"
                ]
              }
            ],
            "description": "The currency code for the fee",
            "examples": [
              "EUR"
            ]
          },
          "expireAt": {
            "type": "number",
            "description": "The expiration timestamp of the quote",
            "examples": [
              1694291200,
              1694291210
            ]
          },
          "creatorMarkup": {
            "type": "object",
            "properties": {
              "percentage": {
                "type": "number"
              },
              "amount": {
                "type": "number"
              },
              "currency": {
                "type": "string"
              }
            },
            "required": [
              "percentage",
              "amount",
              "currency"
            ],
            "description": "Creator markup locked on this quote: percentage (fraction), amount in origin currency. Echoed so the creator sees what they will earn if the order succeeds."
          },
          "agentMarkup": {
            "type": "object",
            "properties": {
              "percentage": {
                "type": "number"
              },
              "amount": {
                "type": "number"
              },
              "currency": {
                "type": "string"
              },
              "beneficiaryAccountId": {
                "type": "string"
              }
            },
            "required": [
              "percentage",
              "amount",
              "currency",
              "beneficiaryAccountId"
            ],
            "description": "Introducer-agent markup locked on this quote: percentage (fraction), amount in origin currency, and the agent account credited on success."
          },
          "originRail": {
            "type": "string",
            "enum": [
              "BALANCE",
              "SEPA",
              "BTC",
              "ETH",
              "MATIC",
              "POLYGON",
              "CELO",
              "TRON",
              "SOLANA",
              "ARBITRUM",
              "OPTIMISM",
              "AVALANCHE",
              "BSC",
              "BASE",
              "XRP",
              "PIX_BR",
              "UPI",
              "IMPS",
              "TRY_BANK_TRANSFER",
              "AED_BANK_TRANSFER",
              "SPEI",
              "IDR_BANK_TRANSFER",
              "CREDIT_CARD",
              "THAI_QR",
              "VIET_QR",
              "GCASH",
              "ARGENTINA_BANK_TRANSFER",
              "PSE",
              "CLABE",
              "PIX",
              "BANK_DEPOSIT_COL",
              "BANK_DEPOSIT_AR",
              "BANK_DEPOSIT_CL",
              "BANK_DEPOSIT_PE",
              "BANK_DEPOSIT_BO",
              "BANK_DEPOSIT_BR",
              "BANK_DEPOSIT_NG",
              "BANK_DEPOSIT_KE",
              "BANK_DEPOSIT_GH",
              "BANK_DEPOSIT_ZA",
              "BANK_DEPOSIT_TZ",
              "BANK_DEPOSIT_UG",
              "BANK_DEPOSIT_RW",
              "BANK_DEPOSIT_MW",
              "BANK_DEPOSIT_ZM",
              "BANK_DEPOSIT_BW",
              "BANK_DEPOSIT_CD",
              "BANK_DEPOSIT_XOF",
              "BANK_DEPOSIT_XAF",
              "MOBILE_MONEY_NG",
              "MOBILE_MONEY_KE",
              "MOBILE_MONEY_GH",
              "MOBILE_MONEY_ZA",
              "MOBILE_MONEY_TZ",
              "MOBILE_MONEY_UG",
              "MOBILE_MONEY_RW",
              "MOBILE_MONEY_MW",
              "MOBILE_MONEY_ZM",
              "MOBILE_MONEY_BW",
              "MOBILE_MONEY_CD",
              "MOBILE_MONEY_XOF",
              "MOBILE_MONEY_XAF",
              "ACH_US",
              "GBP_BANK_TRANSFER"
            ],
            "description": "Rail the origin funds are collected over, echoed from the quote request."
          },
          "destinationRail": {
            "type": "string",
            "enum": [
              "SEPA",
              "ETH",
              "BTC",
              "MATIC",
              "SOL",
              "TRON",
              "XRP",
              "BSC",
              "AVALANCHE",
              "ARBITRUM",
              "OPTIMISM",
              "PIX_BR",
              "PHONE_DEPOSIT_VEN",
              "PHONE_DEPOSIT_MX",
              "PHONE_DEPOSIT_AR",
              "PHONE_DEPOSIT_IN",
              "PHONE_DEPOSIT_VN",
              "BANK_DEPOSIT_VEN",
              "BANK_DEPOSIT_BR",
              "BANK_DEPOSIT_MX",
              "BALANCE",
              "CELO",
              "BASE",
              "UPI",
              "IMPS",
              "THAI_QR",
              "VIET_QR",
              "GCASH",
              "ARGENTINA_BANK_TRANSFER",
              "PSE",
              "BANK_DEPOSIT_COL",
              "BRE_B_COP",
              "ACH_COP",
              "BANK_DEPOSIT_TW",
              "BANK_DEPOSIT_AR",
              "BANK_DEPOSIT_CL",
              "BANK_DEPOSIT_BO",
              "BANK_DEPOSIT_PE",
              "BANK_DEPOSIT_PEN",
              "BANK_DEPOSIT_NG",
              "BANK_DEPOSIT_KE",
              "BANK_DEPOSIT_GH",
              "BANK_DEPOSIT_ZA",
              "BANK_DEPOSIT_TZ",
              "BANK_DEPOSIT_UG",
              "BANK_DEPOSIT_RW",
              "BANK_DEPOSIT_MW",
              "BANK_DEPOSIT_ZM",
              "BANK_DEPOSIT_BW",
              "BANK_DEPOSIT_CD",
              "BANK_DEPOSIT_XOF",
              "BANK_DEPOSIT_XAF",
              "MOBILE_MONEY_NG",
              "MOBILE_MONEY_KE",
              "MOBILE_MONEY_GH",
              "MOBILE_MONEY_ZA",
              "MOBILE_MONEY_TZ",
              "MOBILE_MONEY_UG",
              "MOBILE_MONEY_RW",
              "MOBILE_MONEY_MW",
              "MOBILE_MONEY_ZM",
              "MOBILE_MONEY_BW",
              "MOBILE_MONEY_CD",
              "MOBILE_MONEY_XOF",
              "MOBILE_MONEY_XAF",
              "BANK_DEPOSIT_HK",
              "BANK_DEPOSIT_CN",
              "GBP_BANK_TRANSFER",
              "ACH_US",
              "LINKED_BANK_ACCOUNT"
            ],
            "description": "Rail the destination funds are paid out over, echoed from the quote request."
          },
          "appVisualFee": {
            "type": "number",
            "description": "Fee to display to the end user, which can differ from `fee` where the workspace absorbs it. Present only for workspaces configured that way; prefer `fee` for reconciliation.",
            "example": 0
          }
        },
        "required": [
          "quoteId",
          "originCurrency",
          "originAmount",
          "destinationCurrency",
          "destinationAmount",
          "price",
          "conversionRate",
          "pair",
          "fee",
          "feeCurrency",
          "expireAt"
        ],
        "description": "Response schema for creating a quote"
      },
      "GetBalancesRequest": {
        "type": "object",
        "properties": {
          "currency": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "EUR",
                  "USD",
                  "GBP",
                  "BRL",
                  "MXN",
                  "ARS",
                  "COP",
                  "PEN",
                  "NGN",
                  "KES",
                  "TZS",
                  "UGX",
                  "RWF",
                  "MWK",
                  "ZMW",
                  "XOF",
                  "XAF",
                  "BWP"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "USDC",
                  "USDT",
                  "CUSD",
                  "BTC",
                  "ETH",
                  "POL",
                  "SOL",
                  "TRX",
                  "AVAX",
                  "XRP",
                  "BNB"
                ]
              }
            ],
            "description": "Optional currency code to filter the balances",
            "examples": [
              "EUR"
            ]
          },
          "userEmail": {
            "type": "string",
            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
            "description": "Optional user email to filter the balances",
            "examples": [
              "user@virtuabroker.com",
              "john.doe@example.com",
              "alice@example.com"
            ]
          }
        },
        "examples": [
          {
            "userEmail": "user@virtuabroker.com",
            "currency": "EUR"
          },
          {
            "userEmail": "user2@virtuabroker.com",
            "currency": "EUR"
          }
        ]
      },
      "GetBalancesResponse": {
        "type": "object",
        "properties": {
          "balances": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "currency": {
                  "type": "string",
                  "description": "Currency code",
                  "example": "EUR"
                },
                "balance": {
                  "type": "number",
                  "minimum": 0,
                  "exclusiveMinimum": true,
                  "description": "Available balance for the currency",
                  "example": 100
                },
                "reserved": {
                  "type": "number",
                  "minimum": 0,
                  "description": "Reserved balance for the currency",
                  "example": 100
                },
                "actions": {
                  "type": "object",
                  "properties": {
                    "canDeposit": {
                      "type": "boolean",
                      "description": "Whether this currency can be received/deposited"
                    },
                    "canWithdraw": {
                      "type": "boolean",
                      "description": "Whether this currency can be sent/withdrawn"
                    },
                    "canBuy": {
                      "type": "boolean",
                      "description": "Whether this currency can be bought"
                    },
                    "canSell": {
                      "type": "boolean",
                      "description": "Whether this currency can be sold"
                    }
                  },
                  "required": [
                    "canDeposit",
                    "canWithdraw",
                    "canBuy",
                    "canSell"
                  ],
                  "description": "What the workspace may do with this currency, derived from the capability registry."
                }
              },
              "required": [
                "currency",
                "balance"
              ],
              "description": "Balance information for a single currency"
            },
            "description": "List of balances for different currencies",
            "example": [
              {
                "currency": "EUR",
                "balance": 100,
                "reserved": 20
              },
              {
                "currency": "USD",
                "balance": 100
              }
            ]
          },
          "total": {
            "type": "number",
            "description": "Number of currency balances returned",
            "example": 2
          }
        },
        "required": [
          "balances"
        ]
      },
      "CreateDepositRequest": {
        "allOf": [
          {
            "type": "object",
            "properties": {
              "externalReference": {
                "type": "string",
                "minLength": 1,
                "maxLength": 128,
                "description": "Your own reference for this deposit. Stored as-is and returned on create, detail and list, so you can look the deposit up by it after a network timeout instead of retrying blind. Not interpreted by VirtuaBroker and not shown to the payer — for the payer's transfer reference use depositInfo.referenceCode.",
                "examples": [
                  "partner-ref-0001",
                  "inv_2026_00417"
                ]
              },
              "userData": {
                "oneOf": [
                  {
                    "type": "object",
                    "properties": {
                      "userType": {
                        "type": "string",
                        "enum": [
                          "individual"
                        ]
                      },
                      "firstName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 50,
                        "description": "First name of the user making the deposit (or representative for business)",
                        "examples": [
                          "John",
                          "Alice",
                          "Bob"
                        ]
                      },
                      "lastName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "Last name of the user making the deposit (or representative for business)",
                        "examples": [
                          "Doe",
                          "Smith",
                          "Johnson"
                        ]
                      },
                      "userEmail": {
                        "type": "string",
                        "maxLength": 254,
                        "format": "email",
                        "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                        "description": "Email of the user making the deposit",
                        "examples": [
                          "user@virtuabroker.com",
                          "john.doe@example.com",
                          "alice@example.com"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "maxLength": 150,
                        "description": "Address of the user making the deposit",
                        "examples": [
                          "123 Main St, Anytown, ES",
                          "456 Elm St, Anytown, ES",
                          "789 Oak St, Anytown, ES"
                        ]
                      },
                      "taxDocumentType": {
                        "type": "string",
                        "maxLength": 50,
                        "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                        "examples": [
                          "CC",
                          "NIT",
                          "CE",
                          "NIF",
                          "Other"
                        ]
                      },
                      "taxId": {
                        "type": "string",
                        "maxLength": 30,
                        "description": "Tax ID of the user making the deposit",
                        "examples": [
                          "123-45-6789",
                          "987-65-4321",
                          "111-22-3333"
                        ]
                      },
                      "country": {
                        "type": "string",
                        "enum": [
                          "US",
                          "CA",
                          "GB",
                          "DE",
                          "FR",
                          "AU",
                          "JP",
                          "KR",
                          "SE",
                          "NO",
                          "DK",
                          "FI",
                          "NL",
                          "BE",
                          "CH",
                          "AT",
                          "NZ",
                          "SG",
                          "IE",
                          "LU",
                          "PT",
                          "ES",
                          "IT",
                          "GR",
                          "CZ",
                          "PL",
                          "HU",
                          "SK",
                          "SI",
                          "EE",
                          "LT",
                          "LV",
                          "IS",
                          "MT",
                          "CY",
                          "HR",
                          "RO",
                          "BG",
                          "BR",
                          "AR",
                          "CL",
                          "MX",
                          "CO",
                          "PE",
                          "PA",
                          "UY",
                          "BO",
                          "ZA",
                          "NG",
                          "KE",
                          "GH",
                          "TZ",
                          "UG",
                          "RW",
                          "MW",
                          "ZM",
                          "BW",
                          "CD",
                          "CI",
                          "CM",
                          "IL",
                          "AE",
                          "QA",
                          "SA",
                          "OM",
                          "KW",
                          "BH",
                          "MY",
                          "PH",
                          "TH",
                          "VN",
                          "ID",
                          "IN",
                          "LK",
                          "NP",
                          "BD",
                          "PK",
                          "EG",
                          "MA",
                          "DZ",
                          "TN",
                          "JO",
                          "LB",
                          "TR",
                          "KH",
                          "MM",
                          "LA",
                          "EN",
                          "BT",
                          "VE",
                          "TW",
                          "HK",
                          "CN"
                        ],
                        "description": "Country code of the user making the deposit",
                        "examples": [
                          "ES",
                          "US",
                          "GB"
                        ]
                      },
                      "state": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "State of the user making the deposit",
                        "examples": [
                          "Madrid",
                          "New York",
                          "London"
                        ]
                      },
                      "postalCode": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 30,
                        "description": "Postal code of the user making the deposit",
                        "examples": [
                          "12345",
                          "67890",
                          "abcde"
                        ]
                      },
                      "city": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "City of the user making the deposit",
                        "examples": [
                          "Madrid",
                          "New York",
                          "London"
                        ]
                      },
                      "dob": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 30,
                        "description": "Date of birth of the user making the deposit",
                        "examples": [
                          "1990-01-01",
                          "1995-05-15",
                          "1988-12-31"
                        ]
                      },
                      "phoneNumber": {
                        "type": "string",
                        "maxLength": 30,
                        "description": "Phone number of the user making the deposit",
                        "examples": [
                          "+447700900123",
                          "+447700900456",
                          "+447700900789"
                        ]
                      },
                      "kycId": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 300,
                        "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                        "examples": [
                          "kyc-12345",
                          "kyc-67890",
                          "kyc-abcde"
                        ]
                      },
                      "activity": {
                        "type": "string",
                        "description": "Activity of the user making the deposit",
                        "examples": [
                          "worker",
                          "business",
                          "student"
                        ]
                      }
                    },
                    "required": [
                      "userType",
                      "firstName",
                      "userEmail",
                      "country"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "userType": {
                        "type": "string",
                        "enum": [
                          "business"
                        ]
                      },
                      "businessName": {
                        "type": "string",
                        "maxLength": 150,
                        "description": "Business name (required when userType is business)",
                        "examples": [
                          "Acme Corp",
                          "Tech Solutions Inc",
                          "Global Services Ltd"
                        ]
                      },
                      "firstName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 50,
                        "description": "First name of the user making the deposit (or representative for business)",
                        "examples": [
                          "John",
                          "Alice",
                          "Bob"
                        ]
                      },
                      "userEmail": {
                        "type": "string",
                        "maxLength": 254,
                        "format": "email",
                        "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                        "description": "Email of the user making the deposit",
                        "examples": [
                          "user@virtuabroker.com",
                          "john.doe@example.com",
                          "alice@example.com"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "maxLength": 150,
                        "description": "Address of the user making the deposit",
                        "examples": [
                          "123 Main St, Anytown, ES",
                          "456 Elm St, Anytown, ES",
                          "789 Oak St, Anytown, ES"
                        ]
                      },
                      "taxDocumentType": {
                        "type": "string",
                        "maxLength": 50,
                        "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                        "examples": [
                          "CC",
                          "NIT",
                          "CE",
                          "NIF",
                          "Other"
                        ]
                      },
                      "taxId": {
                        "type": "string",
                        "maxLength": 30,
                        "description": "Tax ID of the user making the deposit",
                        "examples": [
                          "123-45-6789",
                          "987-65-4321",
                          "111-22-3333"
                        ]
                      },
                      "country": {
                        "type": "string",
                        "enum": [
                          "US",
                          "CA",
                          "GB",
                          "DE",
                          "FR",
                          "AU",
                          "JP",
                          "KR",
                          "SE",
                          "NO",
                          "DK",
                          "FI",
                          "NL",
                          "BE",
                          "CH",
                          "AT",
                          "NZ",
                          "SG",
                          "IE",
                          "LU",
                          "PT",
                          "ES",
                          "IT",
                          "GR",
                          "CZ",
                          "PL",
                          "HU",
                          "SK",
                          "SI",
                          "EE",
                          "LT",
                          "LV",
                          "IS",
                          "MT",
                          "CY",
                          "HR",
                          "RO",
                          "BG",
                          "BR",
                          "AR",
                          "CL",
                          "MX",
                          "CO",
                          "PE",
                          "PA",
                          "UY",
                          "BO",
                          "ZA",
                          "NG",
                          "KE",
                          "GH",
                          "TZ",
                          "UG",
                          "RW",
                          "MW",
                          "ZM",
                          "BW",
                          "CD",
                          "CI",
                          "CM",
                          "IL",
                          "AE",
                          "QA",
                          "SA",
                          "OM",
                          "KW",
                          "BH",
                          "MY",
                          "PH",
                          "TH",
                          "VN",
                          "ID",
                          "IN",
                          "LK",
                          "NP",
                          "BD",
                          "PK",
                          "EG",
                          "MA",
                          "DZ",
                          "TN",
                          "JO",
                          "LB",
                          "TR",
                          "KH",
                          "MM",
                          "LA",
                          "EN",
                          "BT",
                          "VE",
                          "TW",
                          "HK",
                          "CN"
                        ],
                        "description": "Country code of the user making the deposit",
                        "examples": [
                          "ES",
                          "US",
                          "GB"
                        ]
                      },
                      "state": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "State of the user making the deposit",
                        "examples": [
                          "Madrid",
                          "New York",
                          "London"
                        ]
                      },
                      "postalCode": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 30,
                        "description": "Postal code of the user making the deposit",
                        "examples": [
                          "12345",
                          "67890",
                          "abcde"
                        ]
                      },
                      "city": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "City of the user making the deposit",
                        "examples": [
                          "Madrid",
                          "New York",
                          "London"
                        ]
                      },
                      "dob": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 30,
                        "description": "Date of birth of the user making the deposit",
                        "examples": [
                          "1990-01-01",
                          "1995-05-15",
                          "1988-12-31"
                        ]
                      },
                      "phoneNumber": {
                        "type": "string",
                        "maxLength": 30,
                        "description": "Phone number of the user making the deposit",
                        "examples": [
                          "+447700900123",
                          "+447700900456",
                          "+447700900789"
                        ]
                      },
                      "kycId": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 300,
                        "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                        "examples": [
                          "kyc-12345",
                          "kyc-67890",
                          "kyc-abcde"
                        ]
                      },
                      "activity": {
                        "type": "string",
                        "description": "Activity of the user making the deposit",
                        "examples": [
                          "worker",
                          "business",
                          "student"
                        ]
                      }
                    },
                    "required": [
                      "userType",
                      "businessName",
                      "firstName",
                      "userEmail",
                      "country"
                    ]
                  }
                ],
                "description": "User data of the person/company making the deposit"
              },
              "userDataId": {
                "type": "string",
                "description": "Account ID of the person/company making the deposit",
                "examples": [
                  "d290f1ee-6c54-4b01-90e6-d701748f0851"
                ]
              },
              "originCountry": {
                "type": "string",
                "minLength": 2,
                "maxLength": 2,
                "description": "Collection country (ISO-3166 alpha-2) for a multi-country payin currency (CFA zones). Must be a valid collection country for the currency; omitted ⇒ the default collection country is used.",
                "examples": [
                  "CI",
                  "SN",
                  "CM"
                ]
              },
              "originNetworkId": {
                "type": "string",
                "minLength": 1,
                "maxLength": 64,
                "description": "Collection network the payer will pay from, for a mobile-money payin corridor. Must be one of the ids returned by GET /v1/currencies/{currency}/networks?rail={rail}&rampType=deposit — passing the same rail, and the same country where the currency is collected across several — not free text. Required only where the corridor offers more than one network; a single-network corridor resolves it automatically and needs no value.",
                "examples": [
                  "3f9a1c7e-2b4d-4e8a-9c1f-0a1b2c3d4e5f"
                ]
              }
            }
          },
          {
            "anyOf": [
              {
                "type": "object",
                "properties": {
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "exclusiveMinimum": true,
                    "description": "Amount to be deposited",
                    "examples": [
                      100,
                      1000,
                      5000,
                      10000
                    ]
                  },
                  "currency": {
                    "type": "string",
                    "enum": [
                      "USDC",
                      "USDT",
                      "CUSD",
                      "BTC",
                      "ETH",
                      "POL",
                      "SOL",
                      "TRX",
                      "AVAX",
                      "XRP",
                      "BNB"
                    ],
                    "description": "Currency of the deposit",
                    "examples": [
                      "USDC",
                      "CUSD",
                      "ETH"
                    ]
                  },
                  "rail": {
                    "anyOf": [
                      {
                        "type": "string",
                        "enum": [
                          "BTC",
                          "ETH",
                          "MATIC",
                          "CELO",
                          "SOLANA",
                          "TRON",
                          "BSC",
                          "XRP",
                          "ARBITRUM",
                          "OPTIMISM",
                          "AVALANCHE",
                          "BASE",
                          "CARDANO"
                        ]
                      },
                      {
                        "type": "string",
                        "enum": [
                          "BALANCE"
                        ]
                      }
                    ]
                  }
                },
                "required": [
                  "amount",
                  "currency",
                  "rail"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "exclusiveMinimum": true,
                    "description": "Amount to be deposited",
                    "examples": [
                      100,
                      1000,
                      5000,
                      10000
                    ]
                  },
                  "currency": {
                    "type": "string",
                    "enum": [
                      "EUR",
                      "USD",
                      "GBP",
                      "BRL",
                      "MXN",
                      "ARS",
                      "COP",
                      "PEN",
                      "NGN",
                      "KES",
                      "TZS",
                      "UGX",
                      "RWF",
                      "MWK",
                      "ZMW",
                      "XOF",
                      "XAF",
                      "BWP"
                    ],
                    "description": "Currency of the deposit",
                    "examples": [
                      "EUR",
                      "BRL"
                    ]
                  },
                  "rail": {
                    "type": "string",
                    "enum": [
                      "BALANCE",
                      "SEPA",
                      "BTC",
                      "ETH",
                      "MATIC",
                      "POLYGON",
                      "CELO",
                      "TRON",
                      "SOLANA",
                      "ARBITRUM",
                      "OPTIMISM",
                      "AVALANCHE",
                      "BSC",
                      "BASE",
                      "XRP",
                      "PIX_BR",
                      "UPI",
                      "IMPS",
                      "TRY_BANK_TRANSFER",
                      "AED_BANK_TRANSFER",
                      "SPEI",
                      "IDR_BANK_TRANSFER",
                      "CREDIT_CARD",
                      "THAI_QR",
                      "VIET_QR",
                      "GCASH",
                      "ARGENTINA_BANK_TRANSFER",
                      "PSE",
                      "CLABE",
                      "PIX",
                      "BANK_DEPOSIT_COL",
                      "BANK_DEPOSIT_AR",
                      "BANK_DEPOSIT_CL",
                      "BANK_DEPOSIT_PE",
                      "BANK_DEPOSIT_BO",
                      "BANK_DEPOSIT_BR",
                      "BANK_DEPOSIT_NG",
                      "BANK_DEPOSIT_KE",
                      "BANK_DEPOSIT_GH",
                      "BANK_DEPOSIT_ZA",
                      "BANK_DEPOSIT_TZ",
                      "BANK_DEPOSIT_UG",
                      "BANK_DEPOSIT_RW",
                      "BANK_DEPOSIT_MW",
                      "BANK_DEPOSIT_ZM",
                      "BANK_DEPOSIT_BW",
                      "BANK_DEPOSIT_CD",
                      "BANK_DEPOSIT_XOF",
                      "BANK_DEPOSIT_XAF",
                      "MOBILE_MONEY_NG",
                      "MOBILE_MONEY_KE",
                      "MOBILE_MONEY_GH",
                      "MOBILE_MONEY_ZA",
                      "MOBILE_MONEY_TZ",
                      "MOBILE_MONEY_UG",
                      "MOBILE_MONEY_RW",
                      "MOBILE_MONEY_MW",
                      "MOBILE_MONEY_ZM",
                      "MOBILE_MONEY_BW",
                      "MOBILE_MONEY_CD",
                      "MOBILE_MONEY_XOF",
                      "MOBILE_MONEY_XAF",
                      "ACH_US",
                      "GBP_BANK_TRANSFER"
                    ],
                    "description": "Rail for the deposit for fiat deposits",
                    "examples": [
                      "SEPA",
                      "MATIC"
                    ]
                  }
                },
                "required": [
                  "currency"
                ]
              }
            ]
          }
        ],
        "description": "Request schema for creating a deposit. Must provide either userData or userDataId."
      },
      "CreateDepositResponse": {
        "type": "object",
        "properties": {
          "depositId": {
            "type": "string",
            "minLength": 1,
            "description": "ID of the deposit. Normally a 12-character internal id; deposits created before mid-2026 may carry a longer legacy id. Treat it as an opaque string."
          },
          "externalReference": {
            "type": "string",
            "minLength": 1,
            "maxLength": 128,
            "description": "Your own reference for this deposit. Stored as-is and returned on create, detail and list, so you can look the deposit up by it after a network timeout instead of retrying blind. Not interpreted by VirtuaBroker and not shown to the payer — for the payer's transfer reference use depositInfo.referenceCode.",
            "examples": [
              "partner-ref-0001",
              "inv_2026_00417"
            ]
          },
          "userData": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "userType": {
                    "type": "string",
                    "enum": [
                      "individual"
                    ]
                  },
                  "firstName": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 50,
                    "description": "First name of the user making the deposit (or representative for business)",
                    "examples": [
                      "John",
                      "Alice",
                      "Bob"
                    ]
                  },
                  "lastName": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "Last name of the user making the deposit (or representative for business)",
                    "examples": [
                      "Doe",
                      "Smith",
                      "Johnson"
                    ]
                  },
                  "userEmail": {
                    "type": "string",
                    "maxLength": 254,
                    "format": "email",
                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                    "description": "Email of the user making the deposit",
                    "examples": [
                      "user@virtuabroker.com",
                      "john.doe@example.com",
                      "alice@example.com"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "maxLength": 150,
                    "description": "Address of the user making the deposit",
                    "examples": [
                      "123 Main St, Anytown, ES",
                      "456 Elm St, Anytown, ES",
                      "789 Oak St, Anytown, ES"
                    ]
                  },
                  "taxDocumentType": {
                    "type": "string",
                    "maxLength": 50,
                    "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                    "examples": [
                      "CC",
                      "NIT",
                      "CE",
                      "NIF",
                      "Other"
                    ]
                  },
                  "taxId": {
                    "type": "string",
                    "maxLength": 30,
                    "description": "Tax ID of the user making the deposit",
                    "examples": [
                      "123-45-6789",
                      "987-65-4321",
                      "111-22-3333"
                    ]
                  },
                  "country": {
                    "type": "string",
                    "enum": [
                      "US",
                      "CA",
                      "GB",
                      "DE",
                      "FR",
                      "AU",
                      "JP",
                      "KR",
                      "SE",
                      "NO",
                      "DK",
                      "FI",
                      "NL",
                      "BE",
                      "CH",
                      "AT",
                      "NZ",
                      "SG",
                      "IE",
                      "LU",
                      "PT",
                      "ES",
                      "IT",
                      "GR",
                      "CZ",
                      "PL",
                      "HU",
                      "SK",
                      "SI",
                      "EE",
                      "LT",
                      "LV",
                      "IS",
                      "MT",
                      "CY",
                      "HR",
                      "RO",
                      "BG",
                      "BR",
                      "AR",
                      "CL",
                      "MX",
                      "CO",
                      "PE",
                      "PA",
                      "UY",
                      "BO",
                      "ZA",
                      "NG",
                      "KE",
                      "GH",
                      "TZ",
                      "UG",
                      "RW",
                      "MW",
                      "ZM",
                      "BW",
                      "CD",
                      "CI",
                      "CM",
                      "IL",
                      "AE",
                      "QA",
                      "SA",
                      "OM",
                      "KW",
                      "BH",
                      "MY",
                      "PH",
                      "TH",
                      "VN",
                      "ID",
                      "IN",
                      "LK",
                      "NP",
                      "BD",
                      "PK",
                      "EG",
                      "MA",
                      "DZ",
                      "TN",
                      "JO",
                      "LB",
                      "TR",
                      "KH",
                      "MM",
                      "LA",
                      "EN",
                      "BT",
                      "VE",
                      "TW",
                      "HK",
                      "CN"
                    ],
                    "description": "Country code of the user making the deposit",
                    "examples": [
                      "ES",
                      "US",
                      "GB"
                    ]
                  },
                  "state": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "State of the user making the deposit",
                    "examples": [
                      "Madrid",
                      "New York",
                      "London"
                    ]
                  },
                  "postalCode": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 30,
                    "description": "Postal code of the user making the deposit",
                    "examples": [
                      "12345",
                      "67890",
                      "abcde"
                    ]
                  },
                  "city": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "City of the user making the deposit",
                    "examples": [
                      "Madrid",
                      "New York",
                      "London"
                    ]
                  },
                  "dob": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 30,
                    "description": "Date of birth of the user making the deposit",
                    "examples": [
                      "1990-01-01",
                      "1995-05-15",
                      "1988-12-31"
                    ]
                  },
                  "phoneNumber": {
                    "type": "string",
                    "maxLength": 30,
                    "description": "Phone number of the user making the deposit",
                    "examples": [
                      "+447700900123",
                      "+447700900456",
                      "+447700900789"
                    ]
                  },
                  "kycId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 300,
                    "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                    "examples": [
                      "kyc-12345",
                      "kyc-67890",
                      "kyc-abcde"
                    ]
                  },
                  "activity": {
                    "type": "string",
                    "description": "Activity of the user making the deposit",
                    "examples": [
                      "worker",
                      "business",
                      "student"
                    ]
                  }
                },
                "required": [
                  "userType",
                  "firstName",
                  "userEmail",
                  "country"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "userType": {
                    "type": "string",
                    "enum": [
                      "business"
                    ]
                  },
                  "businessName": {
                    "type": "string",
                    "maxLength": 150,
                    "description": "Business name (required when userType is business)",
                    "examples": [
                      "Acme Corp",
                      "Tech Solutions Inc",
                      "Global Services Ltd"
                    ]
                  },
                  "firstName": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 50,
                    "description": "First name of the user making the deposit (or representative for business)",
                    "examples": [
                      "John",
                      "Alice",
                      "Bob"
                    ]
                  },
                  "userEmail": {
                    "type": "string",
                    "maxLength": 254,
                    "format": "email",
                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                    "description": "Email of the user making the deposit",
                    "examples": [
                      "user@virtuabroker.com",
                      "john.doe@example.com",
                      "alice@example.com"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "maxLength": 150,
                    "description": "Address of the user making the deposit",
                    "examples": [
                      "123 Main St, Anytown, ES",
                      "456 Elm St, Anytown, ES",
                      "789 Oak St, Anytown, ES"
                    ]
                  },
                  "taxDocumentType": {
                    "type": "string",
                    "maxLength": 50,
                    "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                    "examples": [
                      "CC",
                      "NIT",
                      "CE",
                      "NIF",
                      "Other"
                    ]
                  },
                  "taxId": {
                    "type": "string",
                    "maxLength": 30,
                    "description": "Tax ID of the user making the deposit",
                    "examples": [
                      "123-45-6789",
                      "987-65-4321",
                      "111-22-3333"
                    ]
                  },
                  "country": {
                    "type": "string",
                    "enum": [
                      "US",
                      "CA",
                      "GB",
                      "DE",
                      "FR",
                      "AU",
                      "JP",
                      "KR",
                      "SE",
                      "NO",
                      "DK",
                      "FI",
                      "NL",
                      "BE",
                      "CH",
                      "AT",
                      "NZ",
                      "SG",
                      "IE",
                      "LU",
                      "PT",
                      "ES",
                      "IT",
                      "GR",
                      "CZ",
                      "PL",
                      "HU",
                      "SK",
                      "SI",
                      "EE",
                      "LT",
                      "LV",
                      "IS",
                      "MT",
                      "CY",
                      "HR",
                      "RO",
                      "BG",
                      "BR",
                      "AR",
                      "CL",
                      "MX",
                      "CO",
                      "PE",
                      "PA",
                      "UY",
                      "BO",
                      "ZA",
                      "NG",
                      "KE",
                      "GH",
                      "TZ",
                      "UG",
                      "RW",
                      "MW",
                      "ZM",
                      "BW",
                      "CD",
                      "CI",
                      "CM",
                      "IL",
                      "AE",
                      "QA",
                      "SA",
                      "OM",
                      "KW",
                      "BH",
                      "MY",
                      "PH",
                      "TH",
                      "VN",
                      "ID",
                      "IN",
                      "LK",
                      "NP",
                      "BD",
                      "PK",
                      "EG",
                      "MA",
                      "DZ",
                      "TN",
                      "JO",
                      "LB",
                      "TR",
                      "KH",
                      "MM",
                      "LA",
                      "EN",
                      "BT",
                      "VE",
                      "TW",
                      "HK",
                      "CN"
                    ],
                    "description": "Country code of the user making the deposit",
                    "examples": [
                      "ES",
                      "US",
                      "GB"
                    ]
                  },
                  "state": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "State of the user making the deposit",
                    "examples": [
                      "Madrid",
                      "New York",
                      "London"
                    ]
                  },
                  "postalCode": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 30,
                    "description": "Postal code of the user making the deposit",
                    "examples": [
                      "12345",
                      "67890",
                      "abcde"
                    ]
                  },
                  "city": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "City of the user making the deposit",
                    "examples": [
                      "Madrid",
                      "New York",
                      "London"
                    ]
                  },
                  "dob": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 30,
                    "description": "Date of birth of the user making the deposit",
                    "examples": [
                      "1990-01-01",
                      "1995-05-15",
                      "1988-12-31"
                    ]
                  },
                  "phoneNumber": {
                    "type": "string",
                    "maxLength": 30,
                    "description": "Phone number of the user making the deposit",
                    "examples": [
                      "+447700900123",
                      "+447700900456",
                      "+447700900789"
                    ]
                  },
                  "kycId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 300,
                    "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                    "examples": [
                      "kyc-12345",
                      "kyc-67890",
                      "kyc-abcde"
                    ]
                  },
                  "activity": {
                    "type": "string",
                    "description": "Activity of the user making the deposit",
                    "examples": [
                      "worker",
                      "business",
                      "student"
                    ]
                  }
                },
                "required": [
                  "userType",
                  "businessName",
                  "firstName",
                  "userEmail",
                  "country"
                ]
              }
            ],
            "description": "User data of the person/company making the deposit",
            "examples": [
              {
                "userType": "individual",
                "firstName": "John",
                "lastName": "Doe",
                "userEmail": "user@virtuabroker.com",
                "address": "123 Main St, Anytown, ES",
                "taxId": "123-45-6789",
                "country": "ES"
              },
              {
                "userType": "individual",
                "firstName": "Alice",
                "lastName": "Smith",
                "userEmail": "alice@example.com",
                "address": "456 Elm St, Anytown, ES",
                "taxId": "987-65-4321",
                "country": "ES"
              }
            ]
          },
          "createdAt": {
            "type": "number",
            "description": "Creation time of the deposit",
            "examples": [
              1723027132,
              1723027133,
              1723027134
            ]
          },
          "rail": {
            "type": "string",
            "enum": [
              "BALANCE",
              "SEPA",
              "BTC",
              "ETH",
              "MATIC",
              "POLYGON",
              "CELO",
              "TRON",
              "SOLANA",
              "ARBITRUM",
              "OPTIMISM",
              "AVALANCHE",
              "BSC",
              "BASE",
              "XRP",
              "PIX_BR",
              "UPI",
              "IMPS",
              "TRY_BANK_TRANSFER",
              "AED_BANK_TRANSFER",
              "SPEI",
              "IDR_BANK_TRANSFER",
              "CREDIT_CARD",
              "THAI_QR",
              "VIET_QR",
              "GCASH",
              "ARGENTINA_BANK_TRANSFER",
              "PSE",
              "CLABE",
              "PIX",
              "BANK_DEPOSIT_COL",
              "BANK_DEPOSIT_AR",
              "BANK_DEPOSIT_CL",
              "BANK_DEPOSIT_PE",
              "BANK_DEPOSIT_BO",
              "BANK_DEPOSIT_BR",
              "BANK_DEPOSIT_NG",
              "BANK_DEPOSIT_KE",
              "BANK_DEPOSIT_GH",
              "BANK_DEPOSIT_ZA",
              "BANK_DEPOSIT_TZ",
              "BANK_DEPOSIT_UG",
              "BANK_DEPOSIT_RW",
              "BANK_DEPOSIT_MW",
              "BANK_DEPOSIT_ZM",
              "BANK_DEPOSIT_BW",
              "BANK_DEPOSIT_CD",
              "BANK_DEPOSIT_XOF",
              "BANK_DEPOSIT_XAF",
              "MOBILE_MONEY_NG",
              "MOBILE_MONEY_KE",
              "MOBILE_MONEY_GH",
              "MOBILE_MONEY_ZA",
              "MOBILE_MONEY_TZ",
              "MOBILE_MONEY_UG",
              "MOBILE_MONEY_RW",
              "MOBILE_MONEY_MW",
              "MOBILE_MONEY_ZM",
              "MOBILE_MONEY_BW",
              "MOBILE_MONEY_CD",
              "MOBILE_MONEY_XOF",
              "MOBILE_MONEY_XAF",
              "ACH_US",
              "GBP_BANK_TRANSFER"
            ],
            "description": "Rail of the deposit"
          },
          "receivedAt": {
            "type": "number",
            "description": "Unix ms timestamp of when the funds for this deposit ARRIVED — recorded when the incoming payment is matched to the deposit, which is before it is credited. Present whenever funds have arrived, including a deposit whose funds are still held in review; omitted entirely when no funds ever arrived, so a never-funded or cancelled deposit has no value here and its presence is a reliable settlement signal for reconciliation. Identical on GET /v1/deposits and GET /v1/deposits/{depositId}. Note that the deposit object embedded in order and operation responses does not yet apply this rule — it returns the stored value. Not the creation time — use createdAt for that.",
            "examples": [
              1723027132000,
              1723027133000,
              1723027134000
            ]
          },
          "expectedAmount": {
            "type": "number",
            "minimum": 0,
            "description": "Amount expected of the deposit",
            "examples": [
              1000,
              2000,
              3000
            ]
          },
          "amount": {
            "type": "number",
            "minimum": 0,
            "description": "Amount received of the deposit",
            "examples": [
              1000,
              2000,
              3000
            ]
          },
          "currency": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "EUR",
                  "USD",
                  "GBP",
                  "BRL",
                  "MXN",
                  "ARS",
                  "COP",
                  "PEN",
                  "NGN",
                  "KES",
                  "TZS",
                  "UGX",
                  "RWF",
                  "MWK",
                  "ZMW",
                  "XOF",
                  "XAF",
                  "BWP"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "USDC",
                  "USDT",
                  "CUSD",
                  "BTC",
                  "ETH",
                  "POL",
                  "SOL",
                  "TRX",
                  "AVAX",
                  "XRP",
                  "BNB"
                ]
              }
            ],
            "description": "Currency of the deposit",
            "examples": [
              "EUR",
              "BRL"
            ]
          },
          "fee": {
            "type": "number",
            "minimum": 0,
            "description": "Fee for the deposit. This value is written once the deposit has been executed. Meanwhile it will appear 0.",
            "example": 10
          },
          "expectedFee": {
            "type": "number",
            "minimum": 0,
            "description": "Fee for the deposit. This value is correlated with the expected amount for the deposit.",
            "examples": [
              10,
              20,
              30
            ]
          },
          "feeCurrency": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "EUR",
                  "USD",
                  "GBP",
                  "BRL",
                  "MXN",
                  "ARS",
                  "COP",
                  "PEN",
                  "NGN",
                  "KES",
                  "TZS",
                  "UGX",
                  "RWF",
                  "MWK",
                  "ZMW",
                  "XOF",
                  "XAF",
                  "BWP"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "USDC",
                  "USDT",
                  "CUSD",
                  "BTC",
                  "ETH",
                  "POL",
                  "SOL",
                  "TRX",
                  "AVAX",
                  "XRP",
                  "BNB"
                ]
              }
            ],
            "description": "Currency of the fee",
            "examples": [
              "EUR",
              "BRL"
            ]
          },
          "status": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "Pending",
                  "Processing",
                  "Success",
                  "Failed",
                  "Canceled",
                  "Reviewing"
                ],
                "description": "Common status values that are shared across all operation types",
                "examples": [
                  "Pending",
                  "Processing",
                  "Success",
                  "Failed",
                  "Canceled",
                  "Reviewing"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "PendingCancel",
                  "Received"
                ]
              }
            ],
            "description": "Status of the deposit",
            "examples": [
              "Pending",
              "Success",
              "Failed",
              "Received",
              "PendingCancel"
            ]
          },
          "depositInfo": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "accountHolder": {
                    "type": "string",
                    "description": "Name of the account holder",
                    "example": "John Doe"
                  },
                  "iban": {
                    "type": "string",
                    "description": "SEPA Bank Account Number",
                    "example": "DE8937XXXXXXXXXXXX3000"
                  },
                  "bic": {
                    "type": "string",
                    "description": "Bank BIC/SWIFT code",
                    "example": "DEUTDEFF"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Name of the bank",
                    "example": "Deutsche Bank"
                  },
                  "bankAddress": {
                    "type": "string",
                    "description": "Address of the bank",
                    "example": "Taunusanlage 12"
                  },
                  "bankCity": {
                    "type": "string",
                    "description": "City of the bank",
                    "example": "Frankfurt am Main"
                  },
                  "bankZipcode": {
                    "type": "string",
                    "description": "Zipcode of the bank",
                    "example": "60325"
                  },
                  "bankCountry": {
                    "type": "string",
                    "enum": [
                      "US",
                      "CA",
                      "GB",
                      "DE",
                      "FR",
                      "AU",
                      "JP",
                      "KR",
                      "SE",
                      "NO",
                      "DK",
                      "FI",
                      "NL",
                      "BE",
                      "CH",
                      "AT",
                      "NZ",
                      "SG",
                      "IE",
                      "LU",
                      "PT",
                      "ES",
                      "IT",
                      "GR",
                      "CZ",
                      "PL",
                      "HU",
                      "SK",
                      "SI",
                      "EE",
                      "LT",
                      "LV",
                      "IS",
                      "MT",
                      "CY",
                      "HR",
                      "RO",
                      "BG",
                      "BR",
                      "AR",
                      "CL",
                      "MX",
                      "CO",
                      "PE",
                      "PA",
                      "UY",
                      "BO",
                      "ZA",
                      "NG",
                      "KE",
                      "GH",
                      "TZ",
                      "UG",
                      "RW",
                      "MW",
                      "ZM",
                      "BW",
                      "CD",
                      "CI",
                      "CM",
                      "IL",
                      "AE",
                      "QA",
                      "SA",
                      "OM",
                      "KW",
                      "BH",
                      "MY",
                      "PH",
                      "TH",
                      "VN",
                      "ID",
                      "IN",
                      "LK",
                      "NP",
                      "BD",
                      "PK",
                      "EG",
                      "MA",
                      "DZ",
                      "TN",
                      "JO",
                      "LB",
                      "TR",
                      "KH",
                      "MM",
                      "LA",
                      "EN",
                      "BT",
                      "VE",
                      "TW",
                      "HK",
                      "CN"
                    ],
                    "description": "Country of the bank",
                    "example": "DE"
                  },
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "SEPA"
                    ]
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount. It can be 0 for open-amount bank transfers where the sender chooses the final amount from their bank.",
                    "example": 1000
                  },
                  "referenceCode": {
                    "type": "string",
                    "minLength": 1,
                    "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order. The user must include this code when making the deposit to ensure accurate processing. In cases where the reference code is incorrect or missing, we manually match orders based on the sender's name and other available details. In case the deposit is not matched, we will mark the order as Reviewing and the system will require manual attention.",
                    "example": "REF123456"
                  },
                  "extraDepositMethods": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "methodType": {
                          "type": "string",
                          "enum": [
                            "HOSTED_CHECKOUT"
                          ],
                          "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                        },
                        "url": {
                          "type": "string",
                          "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                          "example": "https://checkout.example.com/pay/abc123"
                        },
                        "callbackUrl": {
                          "type": "string",
                          "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Payment reference for this method (equals the deposit/order reference)"
                        },
                        "amount": {
                          "type": "number",
                          "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                        },
                        "currency": {
                          "type": "string",
                          "description": "Currency of this method"
                        },
                        "expiresAt": {
                          "type": "number",
                          "description": "Unix ms after which `url` is no longer valid, when known"
                        }
                      },
                      "required": [
                        "methodType",
                        "url"
                      ],
                      "description": "An additional, optional way to pay this deposit"
                    },
                    "description": "Additional, optional ways to pay this same deposit (e.g. a hosted card page). The bank details above remain the primary method; ignore this field if you only support bank transfer."
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ],
                "description": "Detailed information about a bank deposit, including the amount and a unique reference code for identification."
              },
              {
                "type": "object",
                "properties": {
                  "address": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Crypto wallet address",
                    "example": "0x1A2b3C4d5E6f7890AbCdEf1234567890AbCdEf12"
                  },
                  "network": {
                    "type": "string",
                    "enum": [
                      "MATIC",
                      "ETH",
                      "CELO",
                      "TRON",
                      "BTC",
                      "SOLANA",
                      "XRP",
                      "CARDANO",
                      "BSC",
                      "ARBITRUM",
                      "OPTIMISM",
                      "AVALANCHE",
                      "BASE"
                    ],
                    "description": "Network for the deposit for crypto deposits",
                    "examples": [
                      "ETH",
                      "MATIC",
                      "CELO"
                    ]
                  },
                  "memo": {
                    "type": "string",
                    "description": "Optional memo for the transaction",
                    "example": "Payment for services"
                  },
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "CRYPTO"
                    ]
                  },
                  "qrCode": {
                    "type": "string",
                    "description": "Base64-encoded QR image for the deposit address",
                    "example": "iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAIAAADTED8xAAABpklEQVR42u3BAQ0AAADCoPdPbQ8HFAAAAAAAAAAAAAAAAAA..."
                  },
                  "qrCodeUrl": {
                    "type": "string",
                    "format": "uri",
                    "description": "7-day signed GCS URL of the QR code PNG"
                  },
                  "qrCodeExpiresAt": {
                    "type": "number",
                    "description": "Unix timestamp (ms) when qrCodeUrl expires"
                  },
                  "receivingAddress": {
                    "type": "string",
                    "description": "The wallet address where funds should be sent",
                    "example": "0xAbCdEf0123456789AbCdEf0123456789AbCdEf01"
                  },
                  "tokenContract": {
                    "type": "string",
                    "description": "The ERC20 token contract address",
                    "example": "0x765DE816845861e75A25fCA122bb6898B8B1282a"
                  },
                  "decimals": {
                    "type": "number",
                    "description": "Token decimals (default 18)",
                    "example": 18
                  }
                },
                "required": [
                  "address",
                  "network",
                  "depositType"
                ],
                "description": "Crypto Deposit Information"
              },
              {
                "type": "object",
                "properties": {
                  "base64QRCode": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Base64 encoded QR code",
                    "example": "base64QRCode"
                  },
                  "qrCodeString": {
                    "type": "string",
                    "minLength": 1,
                    "description": "The Pix copy-and-paste code (BR Code payload) the payer pastes into their bank app. Pass it through unchanged — it carries its own checksum.",
                    "example": "qrCodeString"
                  },
                  "referenceCode": {
                    "type": "string",
                    "minLength": 1,
                    "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order",
                    "example": "REF123456"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "exclusiveMinimum": true,
                    "description": "The monetary value to be deposited into the bank. This amount should be positive and accurately reflect the intended deposit.",
                    "example": 1000
                  },
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "PIX"
                    ]
                  }
                },
                "required": [
                  "base64QRCode",
                  "qrCodeString",
                  "referenceCode",
                  "amount",
                  "depositType"
                ],
                "description": "Pix Deposit Information"
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "CREDIT_CARD"
                    ]
                  }
                },
                "required": [
                  "depositType"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "bankName": {
                    "type": "string",
                    "description": "Name of the bank (present when the rail provides it)"
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Name of the account holder (present when the rail provides it)"
                  },
                  "clabe": {
                    "type": "string",
                    "description": "CLABE number"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Bank account number (e.g. from the BANK_TRANSFER payment method)"
                  },
                  "reference": {
                    "type": "string",
                    "description": "Payment reference (e.g. from the BANK_TRANSFER payment method)"
                  },
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "CLABE"
                    ],
                    "description": "Type of the deposit"
                  }
                },
                "required": [
                  "clabe",
                  "depositType"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "url": {
                    "type": "string",
                    "description": "URL of the PSE payment"
                  },
                  "amountPrefilled": {
                    "type": "boolean",
                    "description": "Whether the payment page already carries the amount. When false or absent, the payer must enter it."
                  },
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "PSE"
                    ],
                    "description": "Type of the deposit"
                  }
                },
                "required": [
                  "url",
                  "depositType"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BALANCE"
                    ]
                  }
                },
                "required": [
                  "depositType"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "PENDING"
                    ]
                  },
                  "currency": {
                    "type": "string",
                    "description": "Currency of the deposit"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the order/deposit"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount. It can be 0 while bank transfer details are open-amount or still being provisioned."
                  },
                  "extraDepositMethods": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "methodType": {
                          "type": "string",
                          "enum": [
                            "HOSTED_CHECKOUT"
                          ],
                          "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                        },
                        "url": {
                          "type": "string",
                          "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                          "example": "https://checkout.example.com/pay/abc123"
                        },
                        "callbackUrl": {
                          "type": "string",
                          "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Payment reference for this method (equals the deposit/order reference)"
                        },
                        "amount": {
                          "type": "number",
                          "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                        },
                        "currency": {
                          "type": "string",
                          "description": "Currency of this method"
                        },
                        "expiresAt": {
                          "type": "number",
                          "description": "Unix ms after which `url` is no longer valid, when known"
                        }
                      },
                      "required": [
                        "methodType",
                        "url"
                      ],
                      "description": "An additional, optional way to pay this deposit"
                    },
                    "description": "Additional ways to pay while the bank details are being provisioned (e.g. a hosted card page). Optional — ignore it and wait for the bank details if you only support bank transfer."
                  },
                  "pendingReason": {
                    "type": "string",
                    "enum": [
                      "collection_account_activating",
                      "accountless_per_account_corridor"
                    ],
                    "description": "Why the instructions are still being provisioned, when the reason is known. `collection_account_activating` means the collection account for this payer is being activated and payable details are expected shortly. `accountless_per_account_corridor` means this corridor collects only into a collection account dedicated to the paying account, this request names no account, and none can be created for it — so payable details will NOT arrive by waiting; create the deposit against an account instead. Absence never conveys timing on either surface: here it means only that no reason is classifiable, and an account-level deposit-method instruction never carries the field at all. Treat the values as an open set and ignore any you do not recognise."
                  }
                },
                "required": [
                  "depositType",
                  "currency",
                  "referenceCode",
                  "amount"
                ],
                "description": "Deposit details are being provisioned; poll the order/deposit or wait for webhook"
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "IMPS"
                    ]
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Name of the bank"
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Name of the account holder"
                  },
                  "ifsc": {
                    "type": "string",
                    "description": "ifsc number"
                  },
                  "type": {
                    "type": "string",
                    "description": "Type of the deposit"
                  },
                  "branch": {
                    "type": "string",
                    "description": "Branch of the bank"
                  },
                  "bank": {
                    "type": "string",
                    "description": "Bank of the account"
                  },
                  "otp": {
                    "type": "string",
                    "description": "OTP of the deposit"
                  },
                  "bankNotes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "number",
                          "description": "Type of note: -1 for warning, 1 for info"
                        },
                        "msg": {
                          "type": "string",
                          "description": "Message content"
                        }
                      },
                      "required": [
                        "type",
                        "msg"
                      ]
                    },
                    "description": "Additional bank instructions"
                  }
                },
                "required": [
                  "depositType",
                  "accountNumber",
                  "bankName",
                  "accountHolder",
                  "ifsc",
                  "type",
                  "branch",
                  "bank",
                  "otp"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "UPI"
                    ]
                  },
                  "vpa": {
                    "type": "string",
                    "description": "Virtual Payment Address"
                  },
                  "name": {
                    "type": "string",
                    "description": "Name of the account holder"
                  },
                  "otp": {
                    "type": "string",
                    "description": "OTP for the transaction"
                  },
                  "paymentLink": {
                    "type": "string",
                    "description": "Payment link"
                  },
                  "upiNotes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "number",
                          "description": "Type of note: -1 for warning, 1 for info"
                        },
                        "msg": {
                          "type": "string",
                          "description": "Message content"
                        }
                      },
                      "required": [
                        "type",
                        "msg"
                      ]
                    },
                    "description": "Additional UPI instructions"
                  }
                },
                "required": [
                  "depositType",
                  "vpa",
                  "name",
                  "otp",
                  "paymentLink"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "AED_BANK_TRANSFER"
                    ]
                  },
                  "iban": {
                    "type": "string",
                    "description": "International Bank Account Number"
                  },
                  "name": {
                    "type": "string",
                    "description": "Name of the account holder"
                  },
                  "bank": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "type": {
                    "type": "string",
                    "description": "Account type"
                  },
                  "address": {
                    "type": "string",
                    "description": "Bank address"
                  },
                  "email": {
                    "type": "string",
                    "description": "Contact email"
                  },
                  "phoneNumber": {
                    "type": "string",
                    "description": "Contact phone number"
                  },
                  "transferCode": {
                    "type": "string",
                    "description": "Transfer code"
                  },
                  "poBox": {
                    "type": "string",
                    "description": "P.O. Box"
                  },
                  "otp": {
                    "type": "string",
                    "description": "OTP for the transaction"
                  },
                  "bankNotes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "number",
                          "description": "Type of note: -1 for warning, 1 for info"
                        },
                        "msg": {
                          "type": "string",
                          "description": "Message content"
                        }
                      },
                      "required": [
                        "type",
                        "msg"
                      ]
                    },
                    "description": "Additional bank instructions"
                  }
                },
                "required": [
                  "depositType",
                  "iban",
                  "name",
                  "bank",
                  "type",
                  "address",
                  "email",
                  "phoneNumber",
                  "transferCode",
                  "poBox",
                  "otp"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "SPEI"
                    ]
                  },
                  "clabe": {
                    "type": "string",
                    "description": "CLABE number"
                  },
                  "name": {
                    "type": "string",
                    "description": "Name of the account holder"
                  },
                  "bank": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankNotes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "number",
                          "description": "Type of note: -1 for warning, 1 for info"
                        },
                        "msg": {
                          "type": "string",
                          "description": "Message content"
                        }
                      },
                      "required": [
                        "type",
                        "msg"
                      ]
                    },
                    "description": "Additional bank instructions"
                  }
                },
                "required": [
                  "depositType",
                  "clabe",
                  "name",
                  "bank"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "TRY_BANK_TRANSFER"
                    ]
                  },
                  "iban": {
                    "type": "string",
                    "description": "International Bank Account Number"
                  },
                  "name": {
                    "type": "string",
                    "description": "Name of the account holder"
                  },
                  "bank": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "otp": {
                    "type": "string",
                    "description": "OTP for the transaction"
                  },
                  "bankNotes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "number",
                          "description": "Type of note: -1 for warning, 1 for info"
                        },
                        "msg": {
                          "type": "string",
                          "description": "Message content"
                        }
                      },
                      "required": [
                        "type",
                        "msg"
                      ]
                    },
                    "description": "Additional bank instructions"
                  }
                },
                "required": [
                  "depositType",
                  "iban",
                  "name",
                  "bank",
                  "otp"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "IDR_BANK_TRANSFER"
                    ]
                  },
                  "virtualAccount": {
                    "type": "string",
                    "description": "Virtual account number"
                  },
                  "name": {
                    "type": "string",
                    "description": "Name of the account holder"
                  },
                  "bank": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankNotes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "number",
                          "description": "Type of note: -1 for warning, 1 for info"
                        },
                        "msg": {
                          "type": "string",
                          "description": "Message content"
                        }
                      },
                      "required": [
                        "type",
                        "msg"
                      ]
                    },
                    "description": "Additional bank instructions"
                  }
                },
                "required": [
                  "depositType",
                  "virtualAccount",
                  "name",
                  "bank"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "THAI_QR"
                    ]
                  },
                  "qrCode": {
                    "type": "string",
                    "description": "QR code"
                  },
                  "otp": {
                    "type": "string",
                    "description": "OTP for the transaction"
                  },
                  "bankNotes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "number",
                          "description": "Type of note: -1 for warning, 1 for info"
                        },
                        "msg": {
                          "type": "string",
                          "description": "Message content"
                        }
                      },
                      "required": [
                        "type",
                        "msg"
                      ]
                    },
                    "description": "Additional bank instructions"
                  }
                },
                "required": [
                  "depositType",
                  "qrCode",
                  "otp"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "VIET_QR"
                    ]
                  },
                  "qrCode": {
                    "type": "string",
                    "description": "QR code"
                  },
                  "otp": {
                    "type": "string",
                    "description": "OTP for the transaction"
                  },
                  "bankNotes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "number",
                          "description": "Type of note: -1 for warning, 1 for info"
                        },
                        "msg": {
                          "type": "string",
                          "description": "Message content"
                        }
                      },
                      "required": [
                        "type",
                        "msg"
                      ]
                    },
                    "description": "Additional bank instructions"
                  }
                },
                "required": [
                  "depositType",
                  "qrCode",
                  "otp"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "GCASH"
                    ]
                  },
                  "qrCode": {
                    "type": "string",
                    "description": "QR code"
                  },
                  "otp": {
                    "type": "string",
                    "description": "OTP for the transaction"
                  },
                  "bankNotes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "number",
                          "description": "Type of note: -1 for warning, 1 for info"
                        },
                        "msg": {
                          "type": "string",
                          "description": "Message content"
                        }
                      },
                      "required": [
                        "type",
                        "msg"
                      ]
                    },
                    "description": "Additional bank instructions"
                  }
                },
                "required": [
                  "depositType",
                  "qrCode",
                  "otp"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "ARGENTINA_BANK_TRANSFER"
                    ]
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Account number"
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "accountNumber"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "ACH_US"
                    ]
                  },
                  "routingNumber": {
                    "type": "string",
                    "description": "US bank ABA routing number"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "US bank account number"
                  },
                  "beneficiaryName": {
                    "type": "string",
                    "description": "Beneficiary name on the account"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Name of the bank"
                  },
                  "bankAddress": {
                    "type": "string",
                    "description": "Address of the bank"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names (e.g. ACH, Wire)"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount in USD"
                  },
                  "referenceCode": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Reference code to include in the wire/ACH transfer"
                  }
                },
                "required": [
                  "depositType",
                  "routingNumber",
                  "accountNumber",
                  "beneficiaryName",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "ACH_PULL"
                    ]
                  }
                },
                "required": [
                  "depositType"
                ],
                "description": "Funds are pulled from the holder's own linked US bank account; no transfer instructions apply"
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "LOCALBANK"
                    ],
                    "description": "Deprecated generic local-bank payin type. Superseded by the corridor-specific deposit types (e.g. SEPA, ACH_US, GBP_BANK_TRANSFER, CLABE/SPEI, PIX, ARGENTINA_BANK_TRANSFER, BANK_DEPOSIT_<CC>). Still returned on some corridors and on historical records, so integrators must continue to handle it. Discover the applicable per-currency method via GET /v1/currencies/{currency}/payin-schema.",
                    "deprecated": true
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "GBP_BANK_TRANSFER"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "UK bank account number"
                  },
                  "sortCode": {
                    "type": "string",
                    "description": "UK sort code"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Name of the bank"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names (e.g. Faster Payments, CHAPS, BACS)"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount in GBP"
                  },
                  "referenceCode": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Reference code to include in the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "accountHolder",
                  "accountNumber",
                  "sortCode",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_COL"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_CL"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_BO"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_BR"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_NG"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_KE"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_GH"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_ZA"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_TZ"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_UG"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_RW"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_MW"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_ZM"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_BW"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_CD"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_XOF"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_XAF"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_NG"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_KE"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_GH"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_ZA"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_TZ"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_UG"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_RW"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_MW"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_ZM"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_BW"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_CD"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_XOF"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_XAF"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              }
            ],
            "description": "Details of the deposit",
            "examples": [
              {
                "accountHolder": "John Doe",
                "iban": "DE8937XXXXXXXXXXXX3000",
                "bic": "COBADEFFXXX",
                "bankName": "Commerzbank",
                "bankAddress": "Mainzer Landstrasse 151-153",
                "bankCity": "Frankfurt",
                "bankZipcode": "60327",
                "bankCountry": "DE",
                "amount": 1000,
                "referenceCode": "ABC123",
                "depositType": "SEPA"
              }
            ]
          },
          "depositInfoPending": {
            "type": "boolean",
            "description": "True while the payment instructions are still being prepared. Poll this deposit until it is false (or absent) before showing the instructions to the payer."
          },
          "complianceHold": {
            "type": "object",
            "properties": {
              "reason": {
                "type": "string",
                "enum": [
                  "screening",
                  "fiat_monitoring"
                ],
                "description": "Compliance hold reason"
              }
            },
            "required": [
              "reason"
            ],
            "description": "Present while the inbound transfer funding this deposit is held in provider compliance review. The deposit stays Reviewing (amount 0, never credited) until the hold clears (promote to Received) or the transfer is rejected/returned (terminalize)."
          }
        },
        "required": [
          "depositId",
          "createdAt",
          "expectedAmount",
          "amount",
          "currency",
          "fee",
          "expectedFee",
          "feeCurrency",
          "status",
          "depositInfo"
        ],
        "description": "Response schema for creating a deposit"
      },
      "GetDepositRequest": {
        "type": "object",
        "properties": {
          "depositId": {
            "type": "string",
            "minLength": 12,
            "maxLength": 12,
            "pattern": "^[A-Z0-9]{12}$",
            "description": "ID of the deposit",
            "examples": [
              "01CLFXMT67II",
              "2R7E5Y5KFXP8",
              "4FWWRE3Y2URM"
            ]
          }
        },
        "required": [
          "depositId"
        ],
        "description": "Request schema for getting deposit details"
      },
      "GetDepositResponse": {
        "type": "object",
        "properties": {
          "depositId": {
            "type": "string",
            "minLength": 1,
            "description": "ID of the deposit. Normally a 12-character internal id; deposits created before mid-2026 may carry a longer legacy id. Treat it as an opaque string."
          },
          "externalReference": {
            "type": "string",
            "minLength": 1,
            "maxLength": 128,
            "description": "Your own reference for this deposit. Stored as-is and returned on create, detail and list, so you can look the deposit up by it after a network timeout instead of retrying blind. Not interpreted by VirtuaBroker and not shown to the payer — for the payer's transfer reference use depositInfo.referenceCode.",
            "examples": [
              "partner-ref-0001",
              "inv_2026_00417"
            ]
          },
          "userData": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "userType": {
                    "type": "string",
                    "enum": [
                      "individual"
                    ]
                  },
                  "firstName": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 50,
                    "description": "First name of the user making the deposit (or representative for business)",
                    "examples": [
                      "John",
                      "Alice",
                      "Bob"
                    ]
                  },
                  "lastName": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "Last name of the user making the deposit (or representative for business)",
                    "examples": [
                      "Doe",
                      "Smith",
                      "Johnson"
                    ]
                  },
                  "userEmail": {
                    "type": "string",
                    "maxLength": 254,
                    "format": "email",
                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                    "description": "Email of the user making the deposit",
                    "examples": [
                      "user@virtuabroker.com",
                      "john.doe@example.com",
                      "alice@example.com"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "maxLength": 150,
                    "description": "Address of the user making the deposit",
                    "examples": [
                      "123 Main St, Anytown, ES",
                      "456 Elm St, Anytown, ES",
                      "789 Oak St, Anytown, ES"
                    ]
                  },
                  "taxDocumentType": {
                    "type": "string",
                    "maxLength": 50,
                    "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                    "examples": [
                      "CC",
                      "NIT",
                      "CE",
                      "NIF",
                      "Other"
                    ]
                  },
                  "taxId": {
                    "type": "string",
                    "maxLength": 30,
                    "description": "Tax ID of the user making the deposit",
                    "examples": [
                      "123-45-6789",
                      "987-65-4321",
                      "111-22-3333"
                    ]
                  },
                  "country": {
                    "type": "string",
                    "enum": [
                      "US",
                      "CA",
                      "GB",
                      "DE",
                      "FR",
                      "AU",
                      "JP",
                      "KR",
                      "SE",
                      "NO",
                      "DK",
                      "FI",
                      "NL",
                      "BE",
                      "CH",
                      "AT",
                      "NZ",
                      "SG",
                      "IE",
                      "LU",
                      "PT",
                      "ES",
                      "IT",
                      "GR",
                      "CZ",
                      "PL",
                      "HU",
                      "SK",
                      "SI",
                      "EE",
                      "LT",
                      "LV",
                      "IS",
                      "MT",
                      "CY",
                      "HR",
                      "RO",
                      "BG",
                      "BR",
                      "AR",
                      "CL",
                      "MX",
                      "CO",
                      "PE",
                      "PA",
                      "UY",
                      "BO",
                      "ZA",
                      "NG",
                      "KE",
                      "GH",
                      "TZ",
                      "UG",
                      "RW",
                      "MW",
                      "ZM",
                      "BW",
                      "CD",
                      "CI",
                      "CM",
                      "IL",
                      "AE",
                      "QA",
                      "SA",
                      "OM",
                      "KW",
                      "BH",
                      "MY",
                      "PH",
                      "TH",
                      "VN",
                      "ID",
                      "IN",
                      "LK",
                      "NP",
                      "BD",
                      "PK",
                      "EG",
                      "MA",
                      "DZ",
                      "TN",
                      "JO",
                      "LB",
                      "TR",
                      "KH",
                      "MM",
                      "LA",
                      "EN",
                      "BT",
                      "VE",
                      "TW",
                      "HK",
                      "CN"
                    ],
                    "description": "Country code of the user making the deposit",
                    "examples": [
                      "ES",
                      "US",
                      "GB"
                    ]
                  },
                  "state": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "State of the user making the deposit",
                    "examples": [
                      "Madrid",
                      "New York",
                      "London"
                    ]
                  },
                  "postalCode": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 30,
                    "description": "Postal code of the user making the deposit",
                    "examples": [
                      "12345",
                      "67890",
                      "abcde"
                    ]
                  },
                  "city": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "City of the user making the deposit",
                    "examples": [
                      "Madrid",
                      "New York",
                      "London"
                    ]
                  },
                  "dob": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 30,
                    "description": "Date of birth of the user making the deposit",
                    "examples": [
                      "1990-01-01",
                      "1995-05-15",
                      "1988-12-31"
                    ]
                  },
                  "phoneNumber": {
                    "type": "string",
                    "maxLength": 30,
                    "description": "Phone number of the user making the deposit",
                    "examples": [
                      "+447700900123",
                      "+447700900456",
                      "+447700900789"
                    ]
                  },
                  "kycId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 300,
                    "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                    "examples": [
                      "kyc-12345",
                      "kyc-67890",
                      "kyc-abcde"
                    ]
                  },
                  "activity": {
                    "type": "string",
                    "description": "Activity of the user making the deposit",
                    "examples": [
                      "worker",
                      "business",
                      "student"
                    ]
                  }
                },
                "required": [
                  "userType",
                  "firstName",
                  "userEmail",
                  "country"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "userType": {
                    "type": "string",
                    "enum": [
                      "business"
                    ]
                  },
                  "businessName": {
                    "type": "string",
                    "maxLength": 150,
                    "description": "Business name (required when userType is business)",
                    "examples": [
                      "Acme Corp",
                      "Tech Solutions Inc",
                      "Global Services Ltd"
                    ]
                  },
                  "firstName": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 50,
                    "description": "First name of the user making the deposit (or representative for business)",
                    "examples": [
                      "John",
                      "Alice",
                      "Bob"
                    ]
                  },
                  "userEmail": {
                    "type": "string",
                    "maxLength": 254,
                    "format": "email",
                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                    "description": "Email of the user making the deposit",
                    "examples": [
                      "user@virtuabroker.com",
                      "john.doe@example.com",
                      "alice@example.com"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "maxLength": 150,
                    "description": "Address of the user making the deposit",
                    "examples": [
                      "123 Main St, Anytown, ES",
                      "456 Elm St, Anytown, ES",
                      "789 Oak St, Anytown, ES"
                    ]
                  },
                  "taxDocumentType": {
                    "type": "string",
                    "maxLength": 50,
                    "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                    "examples": [
                      "CC",
                      "NIT",
                      "CE",
                      "NIF",
                      "Other"
                    ]
                  },
                  "taxId": {
                    "type": "string",
                    "maxLength": 30,
                    "description": "Tax ID of the user making the deposit",
                    "examples": [
                      "123-45-6789",
                      "987-65-4321",
                      "111-22-3333"
                    ]
                  },
                  "country": {
                    "type": "string",
                    "enum": [
                      "US",
                      "CA",
                      "GB",
                      "DE",
                      "FR",
                      "AU",
                      "JP",
                      "KR",
                      "SE",
                      "NO",
                      "DK",
                      "FI",
                      "NL",
                      "BE",
                      "CH",
                      "AT",
                      "NZ",
                      "SG",
                      "IE",
                      "LU",
                      "PT",
                      "ES",
                      "IT",
                      "GR",
                      "CZ",
                      "PL",
                      "HU",
                      "SK",
                      "SI",
                      "EE",
                      "LT",
                      "LV",
                      "IS",
                      "MT",
                      "CY",
                      "HR",
                      "RO",
                      "BG",
                      "BR",
                      "AR",
                      "CL",
                      "MX",
                      "CO",
                      "PE",
                      "PA",
                      "UY",
                      "BO",
                      "ZA",
                      "NG",
                      "KE",
                      "GH",
                      "TZ",
                      "UG",
                      "RW",
                      "MW",
                      "ZM",
                      "BW",
                      "CD",
                      "CI",
                      "CM",
                      "IL",
                      "AE",
                      "QA",
                      "SA",
                      "OM",
                      "KW",
                      "BH",
                      "MY",
                      "PH",
                      "TH",
                      "VN",
                      "ID",
                      "IN",
                      "LK",
                      "NP",
                      "BD",
                      "PK",
                      "EG",
                      "MA",
                      "DZ",
                      "TN",
                      "JO",
                      "LB",
                      "TR",
                      "KH",
                      "MM",
                      "LA",
                      "EN",
                      "BT",
                      "VE",
                      "TW",
                      "HK",
                      "CN"
                    ],
                    "description": "Country code of the user making the deposit",
                    "examples": [
                      "ES",
                      "US",
                      "GB"
                    ]
                  },
                  "state": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "State of the user making the deposit",
                    "examples": [
                      "Madrid",
                      "New York",
                      "London"
                    ]
                  },
                  "postalCode": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 30,
                    "description": "Postal code of the user making the deposit",
                    "examples": [
                      "12345",
                      "67890",
                      "abcde"
                    ]
                  },
                  "city": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "City of the user making the deposit",
                    "examples": [
                      "Madrid",
                      "New York",
                      "London"
                    ]
                  },
                  "dob": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 30,
                    "description": "Date of birth of the user making the deposit",
                    "examples": [
                      "1990-01-01",
                      "1995-05-15",
                      "1988-12-31"
                    ]
                  },
                  "phoneNumber": {
                    "type": "string",
                    "maxLength": 30,
                    "description": "Phone number of the user making the deposit",
                    "examples": [
                      "+447700900123",
                      "+447700900456",
                      "+447700900789"
                    ]
                  },
                  "kycId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 300,
                    "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                    "examples": [
                      "kyc-12345",
                      "kyc-67890",
                      "kyc-abcde"
                    ]
                  },
                  "activity": {
                    "type": "string",
                    "description": "Activity of the user making the deposit",
                    "examples": [
                      "worker",
                      "business",
                      "student"
                    ]
                  }
                },
                "required": [
                  "userType",
                  "businessName",
                  "firstName",
                  "userEmail",
                  "country"
                ]
              }
            ],
            "description": "User data of the person/company making the deposit",
            "examples": [
              {
                "userType": "individual",
                "firstName": "John",
                "lastName": "Doe",
                "userEmail": "user@virtuabroker.com",
                "address": "123 Main St, Anytown, ES",
                "taxId": "123-45-6789",
                "country": "ES"
              },
              {
                "userType": "individual",
                "firstName": "Alice",
                "lastName": "Smith",
                "userEmail": "alice@example.com",
                "address": "456 Elm St, Anytown, ES",
                "taxId": "987-65-4321",
                "country": "ES"
              }
            ]
          },
          "createdAt": {
            "type": "number",
            "description": "Creation time of the deposit",
            "examples": [
              1723027132,
              1723027133,
              1723027134
            ]
          },
          "rail": {
            "type": "string",
            "enum": [
              "BALANCE",
              "SEPA",
              "BTC",
              "ETH",
              "MATIC",
              "POLYGON",
              "CELO",
              "TRON",
              "SOLANA",
              "ARBITRUM",
              "OPTIMISM",
              "AVALANCHE",
              "BSC",
              "BASE",
              "XRP",
              "PIX_BR",
              "UPI",
              "IMPS",
              "TRY_BANK_TRANSFER",
              "AED_BANK_TRANSFER",
              "SPEI",
              "IDR_BANK_TRANSFER",
              "CREDIT_CARD",
              "THAI_QR",
              "VIET_QR",
              "GCASH",
              "ARGENTINA_BANK_TRANSFER",
              "PSE",
              "CLABE",
              "PIX",
              "BANK_DEPOSIT_COL",
              "BANK_DEPOSIT_AR",
              "BANK_DEPOSIT_CL",
              "BANK_DEPOSIT_PE",
              "BANK_DEPOSIT_BO",
              "BANK_DEPOSIT_BR",
              "BANK_DEPOSIT_NG",
              "BANK_DEPOSIT_KE",
              "BANK_DEPOSIT_GH",
              "BANK_DEPOSIT_ZA",
              "BANK_DEPOSIT_TZ",
              "BANK_DEPOSIT_UG",
              "BANK_DEPOSIT_RW",
              "BANK_DEPOSIT_MW",
              "BANK_DEPOSIT_ZM",
              "BANK_DEPOSIT_BW",
              "BANK_DEPOSIT_CD",
              "BANK_DEPOSIT_XOF",
              "BANK_DEPOSIT_XAF",
              "MOBILE_MONEY_NG",
              "MOBILE_MONEY_KE",
              "MOBILE_MONEY_GH",
              "MOBILE_MONEY_ZA",
              "MOBILE_MONEY_TZ",
              "MOBILE_MONEY_UG",
              "MOBILE_MONEY_RW",
              "MOBILE_MONEY_MW",
              "MOBILE_MONEY_ZM",
              "MOBILE_MONEY_BW",
              "MOBILE_MONEY_CD",
              "MOBILE_MONEY_XOF",
              "MOBILE_MONEY_XAF",
              "ACH_US",
              "GBP_BANK_TRANSFER"
            ],
            "description": "Rail of the deposit"
          },
          "receivedAt": {
            "type": "number",
            "description": "Unix ms timestamp of when the funds for this deposit ARRIVED — recorded when the incoming payment is matched to the deposit, which is before it is credited. Present whenever funds have arrived, including a deposit whose funds are still held in review; omitted entirely when no funds ever arrived, so a never-funded or cancelled deposit has no value here and its presence is a reliable settlement signal for reconciliation. Identical on GET /v1/deposits and GET /v1/deposits/{depositId}. Note that the deposit object embedded in order and operation responses does not yet apply this rule — it returns the stored value. Not the creation time — use createdAt for that.",
            "examples": [
              1723027132000,
              1723027133000,
              1723027134000
            ]
          },
          "expectedAmount": {
            "type": "number",
            "minimum": 0,
            "description": "Amount expected of the deposit",
            "examples": [
              1000,
              2000,
              3000
            ]
          },
          "amount": {
            "type": "number",
            "minimum": 0,
            "description": "Amount received of the deposit",
            "examples": [
              1000,
              2000,
              3000
            ]
          },
          "currency": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "EUR",
                  "USD",
                  "GBP",
                  "BRL",
                  "MXN",
                  "ARS",
                  "COP",
                  "PEN",
                  "NGN",
                  "KES",
                  "TZS",
                  "UGX",
                  "RWF",
                  "MWK",
                  "ZMW",
                  "XOF",
                  "XAF",
                  "BWP"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "USDC",
                  "USDT",
                  "CUSD",
                  "BTC",
                  "ETH",
                  "POL",
                  "SOL",
                  "TRX",
                  "AVAX",
                  "XRP",
                  "BNB"
                ]
              }
            ],
            "description": "Currency of the deposit",
            "examples": [
              "EUR",
              "BRL"
            ]
          },
          "fee": {
            "type": "number",
            "minimum": 0,
            "description": "Fee for the deposit. This value is written once the deposit has been executed. Meanwhile it will appear 0.",
            "example": 10
          },
          "expectedFee": {
            "type": "number",
            "minimum": 0,
            "description": "Fee for the deposit. This value is correlated with the expected amount for the deposit.",
            "examples": [
              10,
              20,
              30
            ]
          },
          "feeCurrency": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "EUR",
                  "USD",
                  "GBP",
                  "BRL",
                  "MXN",
                  "ARS",
                  "COP",
                  "PEN",
                  "NGN",
                  "KES",
                  "TZS",
                  "UGX",
                  "RWF",
                  "MWK",
                  "ZMW",
                  "XOF",
                  "XAF",
                  "BWP"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "USDC",
                  "USDT",
                  "CUSD",
                  "BTC",
                  "ETH",
                  "POL",
                  "SOL",
                  "TRX",
                  "AVAX",
                  "XRP",
                  "BNB"
                ]
              }
            ],
            "description": "Currency of the fee",
            "examples": [
              "EUR",
              "BRL"
            ]
          },
          "status": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "Pending",
                  "Processing",
                  "Success",
                  "Failed",
                  "Canceled",
                  "Reviewing"
                ],
                "description": "Common status values that are shared across all operation types",
                "examples": [
                  "Pending",
                  "Processing",
                  "Success",
                  "Failed",
                  "Canceled",
                  "Reviewing"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "PendingCancel",
                  "Received"
                ]
              }
            ],
            "description": "Status of the deposit",
            "examples": [
              "Pending",
              "Success",
              "Failed",
              "Received",
              "PendingCancel"
            ]
          },
          "depositInfo": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "accountHolder": {
                    "type": "string",
                    "description": "Name of the account holder",
                    "example": "John Doe"
                  },
                  "iban": {
                    "type": "string",
                    "description": "SEPA Bank Account Number",
                    "example": "DE8937XXXXXXXXXXXX3000"
                  },
                  "bic": {
                    "type": "string",
                    "description": "Bank BIC/SWIFT code",
                    "example": "DEUTDEFF"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Name of the bank",
                    "example": "Deutsche Bank"
                  },
                  "bankAddress": {
                    "type": "string",
                    "description": "Address of the bank",
                    "example": "Taunusanlage 12"
                  },
                  "bankCity": {
                    "type": "string",
                    "description": "City of the bank",
                    "example": "Frankfurt am Main"
                  },
                  "bankZipcode": {
                    "type": "string",
                    "description": "Zipcode of the bank",
                    "example": "60325"
                  },
                  "bankCountry": {
                    "type": "string",
                    "enum": [
                      "US",
                      "CA",
                      "GB",
                      "DE",
                      "FR",
                      "AU",
                      "JP",
                      "KR",
                      "SE",
                      "NO",
                      "DK",
                      "FI",
                      "NL",
                      "BE",
                      "CH",
                      "AT",
                      "NZ",
                      "SG",
                      "IE",
                      "LU",
                      "PT",
                      "ES",
                      "IT",
                      "GR",
                      "CZ",
                      "PL",
                      "HU",
                      "SK",
                      "SI",
                      "EE",
                      "LT",
                      "LV",
                      "IS",
                      "MT",
                      "CY",
                      "HR",
                      "RO",
                      "BG",
                      "BR",
                      "AR",
                      "CL",
                      "MX",
                      "CO",
                      "PE",
                      "PA",
                      "UY",
                      "BO",
                      "ZA",
                      "NG",
                      "KE",
                      "GH",
                      "TZ",
                      "UG",
                      "RW",
                      "MW",
                      "ZM",
                      "BW",
                      "CD",
                      "CI",
                      "CM",
                      "IL",
                      "AE",
                      "QA",
                      "SA",
                      "OM",
                      "KW",
                      "BH",
                      "MY",
                      "PH",
                      "TH",
                      "VN",
                      "ID",
                      "IN",
                      "LK",
                      "NP",
                      "BD",
                      "PK",
                      "EG",
                      "MA",
                      "DZ",
                      "TN",
                      "JO",
                      "LB",
                      "TR",
                      "KH",
                      "MM",
                      "LA",
                      "EN",
                      "BT",
                      "VE",
                      "TW",
                      "HK",
                      "CN"
                    ],
                    "description": "Country of the bank",
                    "example": "DE"
                  },
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "SEPA"
                    ]
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount. It can be 0 for open-amount bank transfers where the sender chooses the final amount from their bank.",
                    "example": 1000
                  },
                  "referenceCode": {
                    "type": "string",
                    "minLength": 1,
                    "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order. The user must include this code when making the deposit to ensure accurate processing. In cases where the reference code is incorrect or missing, we manually match orders based on the sender's name and other available details. In case the deposit is not matched, we will mark the order as Reviewing and the system will require manual attention.",
                    "example": "REF123456"
                  },
                  "extraDepositMethods": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "methodType": {
                          "type": "string",
                          "enum": [
                            "HOSTED_CHECKOUT"
                          ],
                          "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                        },
                        "url": {
                          "type": "string",
                          "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                          "example": "https://checkout.example.com/pay/abc123"
                        },
                        "callbackUrl": {
                          "type": "string",
                          "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Payment reference for this method (equals the deposit/order reference)"
                        },
                        "amount": {
                          "type": "number",
                          "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                        },
                        "currency": {
                          "type": "string",
                          "description": "Currency of this method"
                        },
                        "expiresAt": {
                          "type": "number",
                          "description": "Unix ms after which `url` is no longer valid, when known"
                        }
                      },
                      "required": [
                        "methodType",
                        "url"
                      ],
                      "description": "An additional, optional way to pay this deposit"
                    },
                    "description": "Additional, optional ways to pay this same deposit (e.g. a hosted card page). The bank details above remain the primary method; ignore this field if you only support bank transfer."
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ],
                "description": "Detailed information about a bank deposit, including the amount and a unique reference code for identification."
              },
              {
                "type": "object",
                "properties": {
                  "address": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Crypto wallet address",
                    "example": "0x1A2b3C4d5E6f7890AbCdEf1234567890AbCdEf12"
                  },
                  "network": {
                    "type": "string",
                    "enum": [
                      "MATIC",
                      "ETH",
                      "CELO",
                      "TRON",
                      "BTC",
                      "SOLANA",
                      "XRP",
                      "CARDANO",
                      "BSC",
                      "ARBITRUM",
                      "OPTIMISM",
                      "AVALANCHE",
                      "BASE"
                    ],
                    "description": "Network for the deposit for crypto deposits",
                    "examples": [
                      "ETH",
                      "MATIC",
                      "CELO"
                    ]
                  },
                  "memo": {
                    "type": "string",
                    "description": "Optional memo for the transaction",
                    "example": "Payment for services"
                  },
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "CRYPTO"
                    ]
                  },
                  "qrCode": {
                    "type": "string",
                    "description": "Base64-encoded QR image for the deposit address",
                    "example": "iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAIAAADTED8xAAABpklEQVR42u3BAQ0AAADCoPdPbQ8HFAAAAAAAAAAAAAAAAAA..."
                  },
                  "qrCodeUrl": {
                    "type": "string",
                    "format": "uri",
                    "description": "7-day signed GCS URL of the QR code PNG"
                  },
                  "qrCodeExpiresAt": {
                    "type": "number",
                    "description": "Unix timestamp (ms) when qrCodeUrl expires"
                  },
                  "receivingAddress": {
                    "type": "string",
                    "description": "The wallet address where funds should be sent",
                    "example": "0xAbCdEf0123456789AbCdEf0123456789AbCdEf01"
                  },
                  "tokenContract": {
                    "type": "string",
                    "description": "The ERC20 token contract address",
                    "example": "0x765DE816845861e75A25fCA122bb6898B8B1282a"
                  },
                  "decimals": {
                    "type": "number",
                    "description": "Token decimals (default 18)",
                    "example": 18
                  }
                },
                "required": [
                  "address",
                  "network",
                  "depositType"
                ],
                "description": "Crypto Deposit Information"
              },
              {
                "type": "object",
                "properties": {
                  "base64QRCode": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Base64 encoded QR code",
                    "example": "base64QRCode"
                  },
                  "qrCodeString": {
                    "type": "string",
                    "minLength": 1,
                    "description": "The Pix copy-and-paste code (BR Code payload) the payer pastes into their bank app. Pass it through unchanged — it carries its own checksum.",
                    "example": "qrCodeString"
                  },
                  "referenceCode": {
                    "type": "string",
                    "minLength": 1,
                    "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order",
                    "example": "REF123456"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "exclusiveMinimum": true,
                    "description": "The monetary value to be deposited into the bank. This amount should be positive and accurately reflect the intended deposit.",
                    "example": 1000
                  },
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "PIX"
                    ]
                  }
                },
                "required": [
                  "base64QRCode",
                  "qrCodeString",
                  "referenceCode",
                  "amount",
                  "depositType"
                ],
                "description": "Pix Deposit Information"
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "CREDIT_CARD"
                    ]
                  }
                },
                "required": [
                  "depositType"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "bankName": {
                    "type": "string",
                    "description": "Name of the bank (present when the rail provides it)"
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Name of the account holder (present when the rail provides it)"
                  },
                  "clabe": {
                    "type": "string",
                    "description": "CLABE number"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Bank account number (e.g. from the BANK_TRANSFER payment method)"
                  },
                  "reference": {
                    "type": "string",
                    "description": "Payment reference (e.g. from the BANK_TRANSFER payment method)"
                  },
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "CLABE"
                    ],
                    "description": "Type of the deposit"
                  }
                },
                "required": [
                  "clabe",
                  "depositType"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "url": {
                    "type": "string",
                    "description": "URL of the PSE payment"
                  },
                  "amountPrefilled": {
                    "type": "boolean",
                    "description": "Whether the payment page already carries the amount. When false or absent, the payer must enter it."
                  },
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "PSE"
                    ],
                    "description": "Type of the deposit"
                  }
                },
                "required": [
                  "url",
                  "depositType"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BALANCE"
                    ]
                  }
                },
                "required": [
                  "depositType"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "PENDING"
                    ]
                  },
                  "currency": {
                    "type": "string",
                    "description": "Currency of the deposit"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the order/deposit"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount. It can be 0 while bank transfer details are open-amount or still being provisioned."
                  },
                  "extraDepositMethods": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "methodType": {
                          "type": "string",
                          "enum": [
                            "HOSTED_CHECKOUT"
                          ],
                          "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                        },
                        "url": {
                          "type": "string",
                          "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                          "example": "https://checkout.example.com/pay/abc123"
                        },
                        "callbackUrl": {
                          "type": "string",
                          "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Payment reference for this method (equals the deposit/order reference)"
                        },
                        "amount": {
                          "type": "number",
                          "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                        },
                        "currency": {
                          "type": "string",
                          "description": "Currency of this method"
                        },
                        "expiresAt": {
                          "type": "number",
                          "description": "Unix ms after which `url` is no longer valid, when known"
                        }
                      },
                      "required": [
                        "methodType",
                        "url"
                      ],
                      "description": "An additional, optional way to pay this deposit"
                    },
                    "description": "Additional ways to pay while the bank details are being provisioned (e.g. a hosted card page). Optional — ignore it and wait for the bank details if you only support bank transfer."
                  },
                  "pendingReason": {
                    "type": "string",
                    "enum": [
                      "collection_account_activating",
                      "accountless_per_account_corridor"
                    ],
                    "description": "Why the instructions are still being provisioned, when the reason is known. `collection_account_activating` means the collection account for this payer is being activated and payable details are expected shortly. `accountless_per_account_corridor` means this corridor collects only into a collection account dedicated to the paying account, this request names no account, and none can be created for it — so payable details will NOT arrive by waiting; create the deposit against an account instead. Absence never conveys timing on either surface: here it means only that no reason is classifiable, and an account-level deposit-method instruction never carries the field at all. Treat the values as an open set and ignore any you do not recognise."
                  }
                },
                "required": [
                  "depositType",
                  "currency",
                  "referenceCode",
                  "amount"
                ],
                "description": "Deposit details are being provisioned; poll the order/deposit or wait for webhook"
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "IMPS"
                    ]
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Name of the bank"
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Name of the account holder"
                  },
                  "ifsc": {
                    "type": "string",
                    "description": "ifsc number"
                  },
                  "type": {
                    "type": "string",
                    "description": "Type of the deposit"
                  },
                  "branch": {
                    "type": "string",
                    "description": "Branch of the bank"
                  },
                  "bank": {
                    "type": "string",
                    "description": "Bank of the account"
                  },
                  "otp": {
                    "type": "string",
                    "description": "OTP of the deposit"
                  },
                  "bankNotes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "number",
                          "description": "Type of note: -1 for warning, 1 for info"
                        },
                        "msg": {
                          "type": "string",
                          "description": "Message content"
                        }
                      },
                      "required": [
                        "type",
                        "msg"
                      ]
                    },
                    "description": "Additional bank instructions"
                  }
                },
                "required": [
                  "depositType",
                  "accountNumber",
                  "bankName",
                  "accountHolder",
                  "ifsc",
                  "type",
                  "branch",
                  "bank",
                  "otp"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "UPI"
                    ]
                  },
                  "vpa": {
                    "type": "string",
                    "description": "Virtual Payment Address"
                  },
                  "name": {
                    "type": "string",
                    "description": "Name of the account holder"
                  },
                  "otp": {
                    "type": "string",
                    "description": "OTP for the transaction"
                  },
                  "paymentLink": {
                    "type": "string",
                    "description": "Payment link"
                  },
                  "upiNotes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "number",
                          "description": "Type of note: -1 for warning, 1 for info"
                        },
                        "msg": {
                          "type": "string",
                          "description": "Message content"
                        }
                      },
                      "required": [
                        "type",
                        "msg"
                      ]
                    },
                    "description": "Additional UPI instructions"
                  }
                },
                "required": [
                  "depositType",
                  "vpa",
                  "name",
                  "otp",
                  "paymentLink"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "AED_BANK_TRANSFER"
                    ]
                  },
                  "iban": {
                    "type": "string",
                    "description": "International Bank Account Number"
                  },
                  "name": {
                    "type": "string",
                    "description": "Name of the account holder"
                  },
                  "bank": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "type": {
                    "type": "string",
                    "description": "Account type"
                  },
                  "address": {
                    "type": "string",
                    "description": "Bank address"
                  },
                  "email": {
                    "type": "string",
                    "description": "Contact email"
                  },
                  "phoneNumber": {
                    "type": "string",
                    "description": "Contact phone number"
                  },
                  "transferCode": {
                    "type": "string",
                    "description": "Transfer code"
                  },
                  "poBox": {
                    "type": "string",
                    "description": "P.O. Box"
                  },
                  "otp": {
                    "type": "string",
                    "description": "OTP for the transaction"
                  },
                  "bankNotes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "number",
                          "description": "Type of note: -1 for warning, 1 for info"
                        },
                        "msg": {
                          "type": "string",
                          "description": "Message content"
                        }
                      },
                      "required": [
                        "type",
                        "msg"
                      ]
                    },
                    "description": "Additional bank instructions"
                  }
                },
                "required": [
                  "depositType",
                  "iban",
                  "name",
                  "bank",
                  "type",
                  "address",
                  "email",
                  "phoneNumber",
                  "transferCode",
                  "poBox",
                  "otp"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "SPEI"
                    ]
                  },
                  "clabe": {
                    "type": "string",
                    "description": "CLABE number"
                  },
                  "name": {
                    "type": "string",
                    "description": "Name of the account holder"
                  },
                  "bank": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankNotes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "number",
                          "description": "Type of note: -1 for warning, 1 for info"
                        },
                        "msg": {
                          "type": "string",
                          "description": "Message content"
                        }
                      },
                      "required": [
                        "type",
                        "msg"
                      ]
                    },
                    "description": "Additional bank instructions"
                  }
                },
                "required": [
                  "depositType",
                  "clabe",
                  "name",
                  "bank"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "TRY_BANK_TRANSFER"
                    ]
                  },
                  "iban": {
                    "type": "string",
                    "description": "International Bank Account Number"
                  },
                  "name": {
                    "type": "string",
                    "description": "Name of the account holder"
                  },
                  "bank": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "otp": {
                    "type": "string",
                    "description": "OTP for the transaction"
                  },
                  "bankNotes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "number",
                          "description": "Type of note: -1 for warning, 1 for info"
                        },
                        "msg": {
                          "type": "string",
                          "description": "Message content"
                        }
                      },
                      "required": [
                        "type",
                        "msg"
                      ]
                    },
                    "description": "Additional bank instructions"
                  }
                },
                "required": [
                  "depositType",
                  "iban",
                  "name",
                  "bank",
                  "otp"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "IDR_BANK_TRANSFER"
                    ]
                  },
                  "virtualAccount": {
                    "type": "string",
                    "description": "Virtual account number"
                  },
                  "name": {
                    "type": "string",
                    "description": "Name of the account holder"
                  },
                  "bank": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankNotes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "number",
                          "description": "Type of note: -1 for warning, 1 for info"
                        },
                        "msg": {
                          "type": "string",
                          "description": "Message content"
                        }
                      },
                      "required": [
                        "type",
                        "msg"
                      ]
                    },
                    "description": "Additional bank instructions"
                  }
                },
                "required": [
                  "depositType",
                  "virtualAccount",
                  "name",
                  "bank"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "THAI_QR"
                    ]
                  },
                  "qrCode": {
                    "type": "string",
                    "description": "QR code"
                  },
                  "otp": {
                    "type": "string",
                    "description": "OTP for the transaction"
                  },
                  "bankNotes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "number",
                          "description": "Type of note: -1 for warning, 1 for info"
                        },
                        "msg": {
                          "type": "string",
                          "description": "Message content"
                        }
                      },
                      "required": [
                        "type",
                        "msg"
                      ]
                    },
                    "description": "Additional bank instructions"
                  }
                },
                "required": [
                  "depositType",
                  "qrCode",
                  "otp"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "VIET_QR"
                    ]
                  },
                  "qrCode": {
                    "type": "string",
                    "description": "QR code"
                  },
                  "otp": {
                    "type": "string",
                    "description": "OTP for the transaction"
                  },
                  "bankNotes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "number",
                          "description": "Type of note: -1 for warning, 1 for info"
                        },
                        "msg": {
                          "type": "string",
                          "description": "Message content"
                        }
                      },
                      "required": [
                        "type",
                        "msg"
                      ]
                    },
                    "description": "Additional bank instructions"
                  }
                },
                "required": [
                  "depositType",
                  "qrCode",
                  "otp"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "GCASH"
                    ]
                  },
                  "qrCode": {
                    "type": "string",
                    "description": "QR code"
                  },
                  "otp": {
                    "type": "string",
                    "description": "OTP for the transaction"
                  },
                  "bankNotes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "number",
                          "description": "Type of note: -1 for warning, 1 for info"
                        },
                        "msg": {
                          "type": "string",
                          "description": "Message content"
                        }
                      },
                      "required": [
                        "type",
                        "msg"
                      ]
                    },
                    "description": "Additional bank instructions"
                  }
                },
                "required": [
                  "depositType",
                  "qrCode",
                  "otp"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "ARGENTINA_BANK_TRANSFER"
                    ]
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Account number"
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "accountNumber"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "ACH_US"
                    ]
                  },
                  "routingNumber": {
                    "type": "string",
                    "description": "US bank ABA routing number"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "US bank account number"
                  },
                  "beneficiaryName": {
                    "type": "string",
                    "description": "Beneficiary name on the account"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Name of the bank"
                  },
                  "bankAddress": {
                    "type": "string",
                    "description": "Address of the bank"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names (e.g. ACH, Wire)"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount in USD"
                  },
                  "referenceCode": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Reference code to include in the wire/ACH transfer"
                  }
                },
                "required": [
                  "depositType",
                  "routingNumber",
                  "accountNumber",
                  "beneficiaryName",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "ACH_PULL"
                    ]
                  }
                },
                "required": [
                  "depositType"
                ],
                "description": "Funds are pulled from the holder's own linked US bank account; no transfer instructions apply"
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "LOCALBANK"
                    ],
                    "description": "Deprecated generic local-bank payin type. Superseded by the corridor-specific deposit types (e.g. SEPA, ACH_US, GBP_BANK_TRANSFER, CLABE/SPEI, PIX, ARGENTINA_BANK_TRANSFER, BANK_DEPOSIT_<CC>). Still returned on some corridors and on historical records, so integrators must continue to handle it. Discover the applicable per-currency method via GET /v1/currencies/{currency}/payin-schema.",
                    "deprecated": true
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "GBP_BANK_TRANSFER"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "UK bank account number"
                  },
                  "sortCode": {
                    "type": "string",
                    "description": "UK sort code"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Name of the bank"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names (e.g. Faster Payments, CHAPS, BACS)"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount in GBP"
                  },
                  "referenceCode": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Reference code to include in the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "accountHolder",
                  "accountNumber",
                  "sortCode",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_COL"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_CL"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_BO"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_BR"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_NG"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_KE"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_GH"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_ZA"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_TZ"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_UG"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_RW"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_MW"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_ZM"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_BW"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_CD"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_XOF"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_XAF"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_NG"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_KE"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_GH"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_ZA"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_TZ"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_UG"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_RW"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_MW"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_ZM"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_BW"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_CD"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_XOF"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_XAF"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Expected deposit amount"
                  },
                  "referenceCode": {
                    "type": "string",
                    "description": "Reference code for the transfer"
                  }
                },
                "required": [
                  "depositType",
                  "amount",
                  "referenceCode"
                ]
              }
            ],
            "description": "Details of the deposit",
            "examples": [
              {
                "accountHolder": "John Doe",
                "iban": "DE8937XXXXXXXXXXXX3000",
                "bic": "COBADEFFXXX",
                "bankName": "Commerzbank",
                "bankAddress": "Mainzer Landstrasse 151-153",
                "bankCity": "Frankfurt",
                "bankZipcode": "60327",
                "bankCountry": "DE",
                "amount": 1000,
                "referenceCode": "ABC123",
                "depositType": "SEPA"
              }
            ]
          },
          "depositInfoPending": {
            "type": "boolean",
            "description": "True while the payment instructions are still being prepared. Poll this deposit until it is false (or absent) before showing the instructions to the payer."
          },
          "complianceHold": {
            "type": "object",
            "properties": {
              "reason": {
                "type": "string",
                "enum": [
                  "screening",
                  "fiat_monitoring"
                ],
                "description": "Compliance hold reason"
              }
            },
            "required": [
              "reason"
            ],
            "description": "Present while the inbound transfer funding this deposit is held in provider compliance review. The deposit stays Reviewing (amount 0, never credited) until the hold clears (promote to Received) or the transfer is rejected/returned (terminalize)."
          },
          "pendingPaymentReview": {
            "type": "object",
            "properties": {
              "reason": {
                "type": "string",
                "enum": [
                  "name_mismatch",
                  "amount_mismatch",
                  "low_confidence"
                ],
                "description": "Why the payment was not linked automatically. name_mismatch = the payer name differs from the holder; amount_mismatch = the amount differs from the expected one; low_confidence = not enough matching detail. These are the SYSTEM codes for why the payment was not auto-linked; they are not the operator-supplied preLinked.reasonCode published by GET /v1/pending-payments.",
                "examples": [
                  "amount_mismatch"
                ]
              }
            },
            "required": [
              "reason"
            ],
            "additionalProperties": false,
            "description": "Present when a payment has arrived for this deposit and is awaiting a link decision. Retrieve and act on it via GET /v1/pending-payments. Absent when no payment is awaiting a decision — its absence does NOT mean no payment arrived, only that none is pending review."
          }
        },
        "required": [
          "depositId",
          "createdAt",
          "expectedAmount",
          "amount",
          "currency",
          "fee",
          "expectedFee",
          "feeCurrency",
          "status",
          "depositInfo"
        ],
        "description": "Response schema for getting deposit details"
      },
      "DeleteDepositRequest": {
        "type": "object",
        "properties": {
          "depositId": {
            "type": "string",
            "minLength": 12,
            "maxLength": 12,
            "pattern": "^[A-Z0-9]{12}$",
            "description": "ID of the deposit",
            "examples": [
              "01CLFXMT67II",
              "2R7E5Y5KFXP8",
              "4FWWRE3Y2URM"
            ]
          }
        },
        "required": [
          "depositId"
        ],
        "description": "Request schema for deleting a deposit"
      },
      "DeleteDepositResponse": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean",
            "description": "Whether the deletion was successful"
          },
          "message": {
            "type": "string",
            "description": "Success message"
          }
        },
        "required": [
          "success"
        ],
        "description": "Response schema for successful deletion"
      },
      "ListDepositsRequest": {
        "type": "object",
        "properties": {
          "currency": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "EUR",
                  "USD",
                  "GBP",
                  "BRL",
                  "MXN",
                  "ARS",
                  "COP",
                  "PEN",
                  "NGN",
                  "KES",
                  "TZS",
                  "UGX",
                  "RWF",
                  "MWK",
                  "ZMW",
                  "XOF",
                  "XAF",
                  "BWP"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "USDC",
                  "USDT",
                  "CUSD",
                  "BTC",
                  "ETH",
                  "POL",
                  "SOL",
                  "TRX",
                  "AVAX",
                  "XRP",
                  "BNB"
                ]
              }
            ],
            "description": "Optional currency code to filter the deposits",
            "examples": [
              "EUR"
            ]
          },
          "minAmount": {
            "type": "number",
            "minimum": 0
          },
          "maxAmount": {
            "type": "number",
            "minimum": 0
          },
          "from": {
            "type": "integer",
            "minimum": 0
          },
          "to": {
            "type": "integer",
            "minimum": 0
          },
          "userEmail": {
            "type": "string",
            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
            "description": "Email of the user making the request. For a business payer this matches operations under any of its identities — the representative email and the organisation account — so listings stay complete across both.",
            "example": "user@example.com"
          },
          "search": {
            "type": "string",
            "description": "General search (e.g. email or text). When provided, backend may use it for userEmail or text search."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "description": "Deposits per page. Defaults to 10. A full page means there may be more — use `page` to continue, or GET /v1/deposits/count for the total. Large pages are accepted; very large ones are bounded by the search backend and will report an error rather than silently returning fewer rows.",
            "example": 50
          },
          "page": {
            "type": "integer",
            "minimum": 1,
            "description": "1-based page number. Defaults to 1.",
            "example": 1
          },
          "status": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "Pending",
                  "Processing",
                  "Success",
                  "Failed",
                  "Canceled",
                  "Reviewing"
                ],
                "description": "Common status values that are shared across all operation types",
                "examples": [
                  "Pending",
                  "Processing",
                  "Success",
                  "Failed",
                  "Canceled",
                  "Reviewing"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "PendingCancel",
                  "Received"
                ]
              },
              {
                "type": "array",
                "items": {
                  "anyOf": [
                    {
                      "type": "string",
                      "enum": [
                        "Pending",
                        "Processing",
                        "Success",
                        "Failed",
                        "Canceled",
                        "Reviewing"
                      ],
                      "description": "Common status values that are shared across all operation types",
                      "examples": [
                        "Pending",
                        "Processing",
                        "Success",
                        "Failed",
                        "Canceled",
                        "Reviewing"
                      ]
                    },
                    {
                      "type": "string",
                      "enum": [
                        "PendingCancel",
                        "Received"
                      ]
                    }
                  ],
                  "description": "Status for deposit operations",
                  "examples": [
                    "Pending",
                    "Success",
                    "Failed",
                    "Received",
                    "PendingCancel"
                  ]
                }
              }
            ],
            "description": "Optional status to filter deposits. Can be a single status or an array of statuses for multiple filtering",
            "examples": [
              "Pending",
              [
                "Pending",
                "Success"
              ],
              [
                "Pending",
                "Processing",
                "Success"
              ]
            ]
          }
        },
        "additionalProperties": false,
        "description": "Request schema for listing deposits"
      },
      "ListDepositsResponse": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "depositId": {
              "type": "string",
              "minLength": 1,
              "description": "ID of the deposit. Normally a 12-character internal id; deposits created before mid-2026 may carry a longer legacy id. Treat it as an opaque string."
            },
            "externalReference": {
              "type": "string",
              "minLength": 1,
              "maxLength": 128,
              "description": "Your own reference for this deposit. Stored as-is and returned on create, detail and list, so you can look the deposit up by it after a network timeout instead of retrying blind. Not interpreted by VirtuaBroker and not shown to the payer — for the payer's transfer reference use depositInfo.referenceCode.",
              "examples": [
                "partner-ref-0001",
                "inv_2026_00417"
              ]
            },
            "userData": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "userType": {
                      "type": "string",
                      "enum": [
                        "individual"
                      ]
                    },
                    "firstName": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 50,
                      "description": "First name of the user making the deposit (or representative for business)",
                      "examples": [
                        "John",
                        "Alice",
                        "Bob"
                      ]
                    },
                    "lastName": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 100,
                      "description": "Last name of the user making the deposit (or representative for business)",
                      "examples": [
                        "Doe",
                        "Smith",
                        "Johnson"
                      ]
                    },
                    "userEmail": {
                      "type": "string",
                      "maxLength": 254,
                      "format": "email",
                      "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                      "description": "Email of the user making the deposit",
                      "examples": [
                        "user@virtuabroker.com",
                        "john.doe@example.com",
                        "alice@example.com"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "maxLength": 150,
                      "description": "Address of the user making the deposit",
                      "examples": [
                        "123 Main St, Anytown, ES",
                        "456 Elm St, Anytown, ES",
                        "789 Oak St, Anytown, ES"
                      ]
                    },
                    "taxDocumentType": {
                      "type": "string",
                      "maxLength": 50,
                      "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                      "examples": [
                        "CC",
                        "NIT",
                        "CE",
                        "NIF",
                        "Other"
                      ]
                    },
                    "taxId": {
                      "type": "string",
                      "maxLength": 30,
                      "description": "Tax ID of the user making the deposit",
                      "examples": [
                        "123-45-6789",
                        "987-65-4321",
                        "111-22-3333"
                      ]
                    },
                    "country": {
                      "type": "string",
                      "enum": [
                        "US",
                        "CA",
                        "GB",
                        "DE",
                        "FR",
                        "AU",
                        "JP",
                        "KR",
                        "SE",
                        "NO",
                        "DK",
                        "FI",
                        "NL",
                        "BE",
                        "CH",
                        "AT",
                        "NZ",
                        "SG",
                        "IE",
                        "LU",
                        "PT",
                        "ES",
                        "IT",
                        "GR",
                        "CZ",
                        "PL",
                        "HU",
                        "SK",
                        "SI",
                        "EE",
                        "LT",
                        "LV",
                        "IS",
                        "MT",
                        "CY",
                        "HR",
                        "RO",
                        "BG",
                        "BR",
                        "AR",
                        "CL",
                        "MX",
                        "CO",
                        "PE",
                        "PA",
                        "UY",
                        "BO",
                        "ZA",
                        "NG",
                        "KE",
                        "GH",
                        "TZ",
                        "UG",
                        "RW",
                        "MW",
                        "ZM",
                        "BW",
                        "CD",
                        "CI",
                        "CM",
                        "IL",
                        "AE",
                        "QA",
                        "SA",
                        "OM",
                        "KW",
                        "BH",
                        "MY",
                        "PH",
                        "TH",
                        "VN",
                        "ID",
                        "IN",
                        "LK",
                        "NP",
                        "BD",
                        "PK",
                        "EG",
                        "MA",
                        "DZ",
                        "TN",
                        "JO",
                        "LB",
                        "TR",
                        "KH",
                        "MM",
                        "LA",
                        "EN",
                        "BT",
                        "VE",
                        "TW",
                        "HK",
                        "CN"
                      ],
                      "description": "Country code of the user making the deposit",
                      "examples": [
                        "ES",
                        "US",
                        "GB"
                      ]
                    },
                    "state": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 100,
                      "description": "State of the user making the deposit",
                      "examples": [
                        "Madrid",
                        "New York",
                        "London"
                      ]
                    },
                    "postalCode": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 30,
                      "description": "Postal code of the user making the deposit",
                      "examples": [
                        "12345",
                        "67890",
                        "abcde"
                      ]
                    },
                    "city": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 100,
                      "description": "City of the user making the deposit",
                      "examples": [
                        "Madrid",
                        "New York",
                        "London"
                      ]
                    },
                    "dob": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 30,
                      "description": "Date of birth of the user making the deposit",
                      "examples": [
                        "1990-01-01",
                        "1995-05-15",
                        "1988-12-31"
                      ]
                    },
                    "phoneNumber": {
                      "type": "string",
                      "maxLength": 30,
                      "description": "Phone number of the user making the deposit",
                      "examples": [
                        "+447700900123",
                        "+447700900456",
                        "+447700900789"
                      ]
                    },
                    "kycId": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 300,
                      "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                      "examples": [
                        "kyc-12345",
                        "kyc-67890",
                        "kyc-abcde"
                      ]
                    },
                    "activity": {
                      "type": "string",
                      "description": "Activity of the user making the deposit",
                      "examples": [
                        "worker",
                        "business",
                        "student"
                      ]
                    }
                  },
                  "required": [
                    "userType",
                    "firstName",
                    "userEmail",
                    "country"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "userType": {
                      "type": "string",
                      "enum": [
                        "business"
                      ]
                    },
                    "businessName": {
                      "type": "string",
                      "maxLength": 150,
                      "description": "Business name (required when userType is business)",
                      "examples": [
                        "Acme Corp",
                        "Tech Solutions Inc",
                        "Global Services Ltd"
                      ]
                    },
                    "firstName": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 50,
                      "description": "First name of the user making the deposit (or representative for business)",
                      "examples": [
                        "John",
                        "Alice",
                        "Bob"
                      ]
                    },
                    "userEmail": {
                      "type": "string",
                      "maxLength": 254,
                      "format": "email",
                      "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                      "description": "Email of the user making the deposit",
                      "examples": [
                        "user@virtuabroker.com",
                        "john.doe@example.com",
                        "alice@example.com"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "maxLength": 150,
                      "description": "Address of the user making the deposit",
                      "examples": [
                        "123 Main St, Anytown, ES",
                        "456 Elm St, Anytown, ES",
                        "789 Oak St, Anytown, ES"
                      ]
                    },
                    "taxDocumentType": {
                      "type": "string",
                      "maxLength": 50,
                      "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                      "examples": [
                        "CC",
                        "NIT",
                        "CE",
                        "NIF",
                        "Other"
                      ]
                    },
                    "taxId": {
                      "type": "string",
                      "maxLength": 30,
                      "description": "Tax ID of the user making the deposit",
                      "examples": [
                        "123-45-6789",
                        "987-65-4321",
                        "111-22-3333"
                      ]
                    },
                    "country": {
                      "type": "string",
                      "enum": [
                        "US",
                        "CA",
                        "GB",
                        "DE",
                        "FR",
                        "AU",
                        "JP",
                        "KR",
                        "SE",
                        "NO",
                        "DK",
                        "FI",
                        "NL",
                        "BE",
                        "CH",
                        "AT",
                        "NZ",
                        "SG",
                        "IE",
                        "LU",
                        "PT",
                        "ES",
                        "IT",
                        "GR",
                        "CZ",
                        "PL",
                        "HU",
                        "SK",
                        "SI",
                        "EE",
                        "LT",
                        "LV",
                        "IS",
                        "MT",
                        "CY",
                        "HR",
                        "RO",
                        "BG",
                        "BR",
                        "AR",
                        "CL",
                        "MX",
                        "CO",
                        "PE",
                        "PA",
                        "UY",
                        "BO",
                        "ZA",
                        "NG",
                        "KE",
                        "GH",
                        "TZ",
                        "UG",
                        "RW",
                        "MW",
                        "ZM",
                        "BW",
                        "CD",
                        "CI",
                        "CM",
                        "IL",
                        "AE",
                        "QA",
                        "SA",
                        "OM",
                        "KW",
                        "BH",
                        "MY",
                        "PH",
                        "TH",
                        "VN",
                        "ID",
                        "IN",
                        "LK",
                        "NP",
                        "BD",
                        "PK",
                        "EG",
                        "MA",
                        "DZ",
                        "TN",
                        "JO",
                        "LB",
                        "TR",
                        "KH",
                        "MM",
                        "LA",
                        "EN",
                        "BT",
                        "VE",
                        "TW",
                        "HK",
                        "CN"
                      ],
                      "description": "Country code of the user making the deposit",
                      "examples": [
                        "ES",
                        "US",
                        "GB"
                      ]
                    },
                    "state": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 100,
                      "description": "State of the user making the deposit",
                      "examples": [
                        "Madrid",
                        "New York",
                        "London"
                      ]
                    },
                    "postalCode": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 30,
                      "description": "Postal code of the user making the deposit",
                      "examples": [
                        "12345",
                        "67890",
                        "abcde"
                      ]
                    },
                    "city": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 100,
                      "description": "City of the user making the deposit",
                      "examples": [
                        "Madrid",
                        "New York",
                        "London"
                      ]
                    },
                    "dob": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 30,
                      "description": "Date of birth of the user making the deposit",
                      "examples": [
                        "1990-01-01",
                        "1995-05-15",
                        "1988-12-31"
                      ]
                    },
                    "phoneNumber": {
                      "type": "string",
                      "maxLength": 30,
                      "description": "Phone number of the user making the deposit",
                      "examples": [
                        "+447700900123",
                        "+447700900456",
                        "+447700900789"
                      ]
                    },
                    "kycId": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 300,
                      "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                      "examples": [
                        "kyc-12345",
                        "kyc-67890",
                        "kyc-abcde"
                      ]
                    },
                    "activity": {
                      "type": "string",
                      "description": "Activity of the user making the deposit",
                      "examples": [
                        "worker",
                        "business",
                        "student"
                      ]
                    }
                  },
                  "required": [
                    "userType",
                    "businessName",
                    "firstName",
                    "userEmail",
                    "country"
                  ]
                }
              ],
              "description": "User data of the person/company making the deposit",
              "examples": [
                {
                  "userType": "individual",
                  "firstName": "John",
                  "lastName": "Doe",
                  "userEmail": "user@virtuabroker.com",
                  "address": "123 Main St, Anytown, ES",
                  "taxId": "123-45-6789",
                  "country": "ES"
                },
                {
                  "userType": "individual",
                  "firstName": "Alice",
                  "lastName": "Smith",
                  "userEmail": "alice@example.com",
                  "address": "456 Elm St, Anytown, ES",
                  "taxId": "987-65-4321",
                  "country": "ES"
                }
              ]
            },
            "createdAt": {
              "type": "number",
              "description": "Creation time of the deposit",
              "examples": [
                1723027132,
                1723027133,
                1723027134
              ]
            },
            "rail": {
              "type": "string",
              "enum": [
                "BALANCE",
                "SEPA",
                "BTC",
                "ETH",
                "MATIC",
                "POLYGON",
                "CELO",
                "TRON",
                "SOLANA",
                "ARBITRUM",
                "OPTIMISM",
                "AVALANCHE",
                "BSC",
                "BASE",
                "XRP",
                "PIX_BR",
                "UPI",
                "IMPS",
                "TRY_BANK_TRANSFER",
                "AED_BANK_TRANSFER",
                "SPEI",
                "IDR_BANK_TRANSFER",
                "CREDIT_CARD",
                "THAI_QR",
                "VIET_QR",
                "GCASH",
                "ARGENTINA_BANK_TRANSFER",
                "PSE",
                "CLABE",
                "PIX",
                "BANK_DEPOSIT_COL",
                "BANK_DEPOSIT_AR",
                "BANK_DEPOSIT_CL",
                "BANK_DEPOSIT_PE",
                "BANK_DEPOSIT_BO",
                "BANK_DEPOSIT_BR",
                "BANK_DEPOSIT_NG",
                "BANK_DEPOSIT_KE",
                "BANK_DEPOSIT_GH",
                "BANK_DEPOSIT_ZA",
                "BANK_DEPOSIT_TZ",
                "BANK_DEPOSIT_UG",
                "BANK_DEPOSIT_RW",
                "BANK_DEPOSIT_MW",
                "BANK_DEPOSIT_ZM",
                "BANK_DEPOSIT_BW",
                "BANK_DEPOSIT_CD",
                "BANK_DEPOSIT_XOF",
                "BANK_DEPOSIT_XAF",
                "MOBILE_MONEY_NG",
                "MOBILE_MONEY_KE",
                "MOBILE_MONEY_GH",
                "MOBILE_MONEY_ZA",
                "MOBILE_MONEY_TZ",
                "MOBILE_MONEY_UG",
                "MOBILE_MONEY_RW",
                "MOBILE_MONEY_MW",
                "MOBILE_MONEY_ZM",
                "MOBILE_MONEY_BW",
                "MOBILE_MONEY_CD",
                "MOBILE_MONEY_XOF",
                "MOBILE_MONEY_XAF",
                "ACH_US",
                "GBP_BANK_TRANSFER"
              ],
              "description": "Rail of the deposit"
            },
            "receivedAt": {
              "type": "number",
              "description": "Unix ms timestamp of when the funds for this deposit ARRIVED — recorded when the incoming payment is matched to the deposit, which is before it is credited. Present whenever funds have arrived, including a deposit whose funds are still held in review; omitted entirely when no funds ever arrived, so a never-funded or cancelled deposit has no value here and its presence is a reliable settlement signal for reconciliation. Identical on GET /v1/deposits and GET /v1/deposits/{depositId}. Note that the deposit object embedded in order and operation responses does not yet apply this rule — it returns the stored value. Not the creation time — use createdAt for that.",
              "examples": [
                1723027132000,
                1723027133000,
                1723027134000
              ]
            },
            "expectedAmount": {
              "type": "number",
              "minimum": 0,
              "description": "Amount expected of the deposit",
              "examples": [
                1000,
                2000,
                3000
              ]
            },
            "amount": {
              "type": "number",
              "minimum": 0,
              "description": "Amount received of the deposit",
              "examples": [
                1000,
                2000,
                3000
              ]
            },
            "currency": {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "EUR",
                    "USD",
                    "GBP",
                    "BRL",
                    "MXN",
                    "ARS",
                    "COP",
                    "PEN",
                    "NGN",
                    "KES",
                    "TZS",
                    "UGX",
                    "RWF",
                    "MWK",
                    "ZMW",
                    "XOF",
                    "XAF",
                    "BWP"
                  ]
                },
                {
                  "type": "string",
                  "enum": [
                    "USDC",
                    "USDT",
                    "CUSD",
                    "BTC",
                    "ETH",
                    "POL",
                    "SOL",
                    "TRX",
                    "AVAX",
                    "XRP",
                    "BNB"
                  ]
                }
              ],
              "description": "Currency of the deposit",
              "examples": [
                "EUR",
                "BRL"
              ]
            },
            "fee": {
              "type": "number",
              "minimum": 0,
              "description": "Fee for the deposit. This value is written once the deposit has been executed. Meanwhile it will appear 0.",
              "example": 10
            },
            "expectedFee": {
              "type": "number",
              "minimum": 0,
              "description": "Fee for the deposit. This value is correlated with the expected amount for the deposit.",
              "examples": [
                10,
                20,
                30
              ]
            },
            "feeCurrency": {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "EUR",
                    "USD",
                    "GBP",
                    "BRL",
                    "MXN",
                    "ARS",
                    "COP",
                    "PEN",
                    "NGN",
                    "KES",
                    "TZS",
                    "UGX",
                    "RWF",
                    "MWK",
                    "ZMW",
                    "XOF",
                    "XAF",
                    "BWP"
                  ]
                },
                {
                  "type": "string",
                  "enum": [
                    "USDC",
                    "USDT",
                    "CUSD",
                    "BTC",
                    "ETH",
                    "POL",
                    "SOL",
                    "TRX",
                    "AVAX",
                    "XRP",
                    "BNB"
                  ]
                }
              ],
              "description": "Currency of the fee",
              "examples": [
                "EUR",
                "BRL"
              ]
            },
            "status": {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "Pending",
                    "Processing",
                    "Success",
                    "Failed",
                    "Canceled",
                    "Reviewing"
                  ],
                  "description": "Common status values that are shared across all operation types",
                  "examples": [
                    "Pending",
                    "Processing",
                    "Success",
                    "Failed",
                    "Canceled",
                    "Reviewing"
                  ]
                },
                {
                  "type": "string",
                  "enum": [
                    "PendingCancel",
                    "Received"
                  ]
                }
              ],
              "description": "Status of the deposit",
              "examples": [
                "Pending",
                "Success",
                "Failed",
                "Received",
                "PendingCancel"
              ]
            },
            "depositInfo": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "accountHolder": {
                      "type": "string",
                      "description": "Name of the account holder",
                      "example": "John Doe"
                    },
                    "iban": {
                      "type": "string",
                      "description": "SEPA Bank Account Number",
                      "example": "DE8937XXXXXXXXXXXX3000"
                    },
                    "bic": {
                      "type": "string",
                      "description": "Bank BIC/SWIFT code",
                      "example": "DEUTDEFF"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Name of the bank",
                      "example": "Deutsche Bank"
                    },
                    "bankAddress": {
                      "type": "string",
                      "description": "Address of the bank",
                      "example": "Taunusanlage 12"
                    },
                    "bankCity": {
                      "type": "string",
                      "description": "City of the bank",
                      "example": "Frankfurt am Main"
                    },
                    "bankZipcode": {
                      "type": "string",
                      "description": "Zipcode of the bank",
                      "example": "60325"
                    },
                    "bankCountry": {
                      "type": "string",
                      "enum": [
                        "US",
                        "CA",
                        "GB",
                        "DE",
                        "FR",
                        "AU",
                        "JP",
                        "KR",
                        "SE",
                        "NO",
                        "DK",
                        "FI",
                        "NL",
                        "BE",
                        "CH",
                        "AT",
                        "NZ",
                        "SG",
                        "IE",
                        "LU",
                        "PT",
                        "ES",
                        "IT",
                        "GR",
                        "CZ",
                        "PL",
                        "HU",
                        "SK",
                        "SI",
                        "EE",
                        "LT",
                        "LV",
                        "IS",
                        "MT",
                        "CY",
                        "HR",
                        "RO",
                        "BG",
                        "BR",
                        "AR",
                        "CL",
                        "MX",
                        "CO",
                        "PE",
                        "PA",
                        "UY",
                        "BO",
                        "ZA",
                        "NG",
                        "KE",
                        "GH",
                        "TZ",
                        "UG",
                        "RW",
                        "MW",
                        "ZM",
                        "BW",
                        "CD",
                        "CI",
                        "CM",
                        "IL",
                        "AE",
                        "QA",
                        "SA",
                        "OM",
                        "KW",
                        "BH",
                        "MY",
                        "PH",
                        "TH",
                        "VN",
                        "ID",
                        "IN",
                        "LK",
                        "NP",
                        "BD",
                        "PK",
                        "EG",
                        "MA",
                        "DZ",
                        "TN",
                        "JO",
                        "LB",
                        "TR",
                        "KH",
                        "MM",
                        "LA",
                        "EN",
                        "BT",
                        "VE",
                        "TW",
                        "HK",
                        "CN"
                      ],
                      "description": "Country of the bank",
                      "example": "DE"
                    },
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "SEPA"
                      ]
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount. It can be 0 for open-amount bank transfers where the sender chooses the final amount from their bank.",
                      "example": 1000
                    },
                    "referenceCode": {
                      "type": "string",
                      "minLength": 1,
                      "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order. The user must include this code when making the deposit to ensure accurate processing. In cases where the reference code is incorrect or missing, we manually match orders based on the sender's name and other available details. In case the deposit is not matched, we will mark the order as Reviewing and the system will require manual attention.",
                      "example": "REF123456"
                    },
                    "extraDepositMethods": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "methodType": {
                            "type": "string",
                            "enum": [
                              "HOSTED_CHECKOUT"
                            ],
                            "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                          },
                          "url": {
                            "type": "string",
                            "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                            "example": "https://checkout.example.com/pay/abc123"
                          },
                          "callbackUrl": {
                            "type": "string",
                            "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Payment reference for this method (equals the deposit/order reference)"
                          },
                          "amount": {
                            "type": "number",
                            "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                          },
                          "currency": {
                            "type": "string",
                            "description": "Currency of this method"
                          },
                          "expiresAt": {
                            "type": "number",
                            "description": "Unix ms after which `url` is no longer valid, when known"
                          }
                        },
                        "required": [
                          "methodType",
                          "url"
                        ],
                        "description": "An additional, optional way to pay this deposit"
                      },
                      "description": "Additional, optional ways to pay this same deposit (e.g. a hosted card page). The bank details above remain the primary method; ignore this field if you only support bank transfer."
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ],
                  "description": "Detailed information about a bank deposit, including the amount and a unique reference code for identification."
                },
                {
                  "type": "object",
                  "properties": {
                    "address": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Crypto wallet address",
                      "example": "0x1A2b3C4d5E6f7890AbCdEf1234567890AbCdEf12"
                    },
                    "network": {
                      "type": "string",
                      "enum": [
                        "MATIC",
                        "ETH",
                        "CELO",
                        "TRON",
                        "BTC",
                        "SOLANA",
                        "XRP",
                        "CARDANO",
                        "BSC",
                        "ARBITRUM",
                        "OPTIMISM",
                        "AVALANCHE",
                        "BASE"
                      ],
                      "description": "Network for the deposit for crypto deposits",
                      "examples": [
                        "ETH",
                        "MATIC",
                        "CELO"
                      ]
                    },
                    "memo": {
                      "type": "string",
                      "description": "Optional memo for the transaction",
                      "example": "Payment for services"
                    },
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "CRYPTO"
                      ]
                    },
                    "qrCode": {
                      "type": "string",
                      "description": "Base64-encoded QR image for the deposit address",
                      "example": "iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAIAAADTED8xAAABpklEQVR42u3BAQ0AAADCoPdPbQ8HFAAAAAAAAAAAAAAAAAA..."
                    },
                    "qrCodeUrl": {
                      "type": "string",
                      "format": "uri",
                      "description": "7-day signed GCS URL of the QR code PNG"
                    },
                    "qrCodeExpiresAt": {
                      "type": "number",
                      "description": "Unix timestamp (ms) when qrCodeUrl expires"
                    },
                    "receivingAddress": {
                      "type": "string",
                      "description": "The wallet address where funds should be sent",
                      "example": "0xAbCdEf0123456789AbCdEf0123456789AbCdEf01"
                    },
                    "tokenContract": {
                      "type": "string",
                      "description": "The ERC20 token contract address",
                      "example": "0x765DE816845861e75A25fCA122bb6898B8B1282a"
                    },
                    "decimals": {
                      "type": "number",
                      "description": "Token decimals (default 18)",
                      "example": 18
                    }
                  },
                  "required": [
                    "address",
                    "network",
                    "depositType"
                  ],
                  "description": "Crypto Deposit Information"
                },
                {
                  "type": "object",
                  "properties": {
                    "base64QRCode": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Base64 encoded QR code",
                      "example": "base64QRCode"
                    },
                    "qrCodeString": {
                      "type": "string",
                      "minLength": 1,
                      "description": "The Pix copy-and-paste code (BR Code payload) the payer pastes into their bank app. Pass it through unchanged — it carries its own checksum.",
                      "example": "qrCodeString"
                    },
                    "referenceCode": {
                      "type": "string",
                      "minLength": 1,
                      "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order",
                      "example": "REF123456"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "exclusiveMinimum": true,
                      "description": "The monetary value to be deposited into the bank. This amount should be positive and accurately reflect the intended deposit.",
                      "example": 1000
                    },
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "PIX"
                      ]
                    }
                  },
                  "required": [
                    "base64QRCode",
                    "qrCodeString",
                    "referenceCode",
                    "amount",
                    "depositType"
                  ],
                  "description": "Pix Deposit Information"
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "CREDIT_CARD"
                      ]
                    }
                  },
                  "required": [
                    "depositType"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "bankName": {
                      "type": "string",
                      "description": "Name of the bank (present when the rail provides it)"
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Name of the account holder (present when the rail provides it)"
                    },
                    "clabe": {
                      "type": "string",
                      "description": "CLABE number"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Bank account number (e.g. from the BANK_TRANSFER payment method)"
                    },
                    "reference": {
                      "type": "string",
                      "description": "Payment reference (e.g. from the BANK_TRANSFER payment method)"
                    },
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "CLABE"
                      ],
                      "description": "Type of the deposit"
                    }
                  },
                  "required": [
                    "clabe",
                    "depositType"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "url": {
                      "type": "string",
                      "description": "URL of the PSE payment"
                    },
                    "amountPrefilled": {
                      "type": "boolean",
                      "description": "Whether the payment page already carries the amount. When false or absent, the payer must enter it."
                    },
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "PSE"
                      ],
                      "description": "Type of the deposit"
                    }
                  },
                  "required": [
                    "url",
                    "depositType"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "BALANCE"
                      ]
                    }
                  },
                  "required": [
                    "depositType"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "PENDING"
                      ]
                    },
                    "currency": {
                      "type": "string",
                      "description": "Currency of the deposit"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the order/deposit"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount. It can be 0 while bank transfer details are open-amount or still being provisioned."
                    },
                    "extraDepositMethods": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "methodType": {
                            "type": "string",
                            "enum": [
                              "HOSTED_CHECKOUT"
                            ],
                            "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                          },
                          "url": {
                            "type": "string",
                            "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                            "example": "https://checkout.example.com/pay/abc123"
                          },
                          "callbackUrl": {
                            "type": "string",
                            "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Payment reference for this method (equals the deposit/order reference)"
                          },
                          "amount": {
                            "type": "number",
                            "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                          },
                          "currency": {
                            "type": "string",
                            "description": "Currency of this method"
                          },
                          "expiresAt": {
                            "type": "number",
                            "description": "Unix ms after which `url` is no longer valid, when known"
                          }
                        },
                        "required": [
                          "methodType",
                          "url"
                        ],
                        "description": "An additional, optional way to pay this deposit"
                      },
                      "description": "Additional ways to pay while the bank details are being provisioned (e.g. a hosted card page). Optional — ignore it and wait for the bank details if you only support bank transfer."
                    },
                    "pendingReason": {
                      "type": "string",
                      "enum": [
                        "collection_account_activating",
                        "accountless_per_account_corridor"
                      ],
                      "description": "Why the instructions are still being provisioned, when the reason is known. `collection_account_activating` means the collection account for this payer is being activated and payable details are expected shortly. `accountless_per_account_corridor` means this corridor collects only into a collection account dedicated to the paying account, this request names no account, and none can be created for it — so payable details will NOT arrive by waiting; create the deposit against an account instead. Absence never conveys timing on either surface: here it means only that no reason is classifiable, and an account-level deposit-method instruction never carries the field at all. Treat the values as an open set and ignore any you do not recognise."
                    }
                  },
                  "required": [
                    "depositType",
                    "currency",
                    "referenceCode",
                    "amount"
                  ],
                  "description": "Deposit details are being provisioned; poll the order/deposit or wait for webhook"
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "IMPS"
                      ]
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Name of the bank"
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Name of the account holder"
                    },
                    "ifsc": {
                      "type": "string",
                      "description": "ifsc number"
                    },
                    "type": {
                      "type": "string",
                      "description": "Type of the deposit"
                    },
                    "branch": {
                      "type": "string",
                      "description": "Branch of the bank"
                    },
                    "bank": {
                      "type": "string",
                      "description": "Bank of the account"
                    },
                    "otp": {
                      "type": "string",
                      "description": "OTP of the deposit"
                    },
                    "bankNotes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "number",
                            "description": "Type of note: -1 for warning, 1 for info"
                          },
                          "msg": {
                            "type": "string",
                            "description": "Message content"
                          }
                        },
                        "required": [
                          "type",
                          "msg"
                        ]
                      },
                      "description": "Additional bank instructions"
                    }
                  },
                  "required": [
                    "depositType",
                    "accountNumber",
                    "bankName",
                    "accountHolder",
                    "ifsc",
                    "type",
                    "branch",
                    "bank",
                    "otp"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "UPI"
                      ]
                    },
                    "vpa": {
                      "type": "string",
                      "description": "Virtual Payment Address"
                    },
                    "name": {
                      "type": "string",
                      "description": "Name of the account holder"
                    },
                    "otp": {
                      "type": "string",
                      "description": "OTP for the transaction"
                    },
                    "paymentLink": {
                      "type": "string",
                      "description": "Payment link"
                    },
                    "upiNotes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "number",
                            "description": "Type of note: -1 for warning, 1 for info"
                          },
                          "msg": {
                            "type": "string",
                            "description": "Message content"
                          }
                        },
                        "required": [
                          "type",
                          "msg"
                        ]
                      },
                      "description": "Additional UPI instructions"
                    }
                  },
                  "required": [
                    "depositType",
                    "vpa",
                    "name",
                    "otp",
                    "paymentLink"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "AED_BANK_TRANSFER"
                      ]
                    },
                    "iban": {
                      "type": "string",
                      "description": "International Bank Account Number"
                    },
                    "name": {
                      "type": "string",
                      "description": "Name of the account holder"
                    },
                    "bank": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "type": {
                      "type": "string",
                      "description": "Account type"
                    },
                    "address": {
                      "type": "string",
                      "description": "Bank address"
                    },
                    "email": {
                      "type": "string",
                      "description": "Contact email"
                    },
                    "phoneNumber": {
                      "type": "string",
                      "description": "Contact phone number"
                    },
                    "transferCode": {
                      "type": "string",
                      "description": "Transfer code"
                    },
                    "poBox": {
                      "type": "string",
                      "description": "P.O. Box"
                    },
                    "otp": {
                      "type": "string",
                      "description": "OTP for the transaction"
                    },
                    "bankNotes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "number",
                            "description": "Type of note: -1 for warning, 1 for info"
                          },
                          "msg": {
                            "type": "string",
                            "description": "Message content"
                          }
                        },
                        "required": [
                          "type",
                          "msg"
                        ]
                      },
                      "description": "Additional bank instructions"
                    }
                  },
                  "required": [
                    "depositType",
                    "iban",
                    "name",
                    "bank",
                    "type",
                    "address",
                    "email",
                    "phoneNumber",
                    "transferCode",
                    "poBox",
                    "otp"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "SPEI"
                      ]
                    },
                    "clabe": {
                      "type": "string",
                      "description": "CLABE number"
                    },
                    "name": {
                      "type": "string",
                      "description": "Name of the account holder"
                    },
                    "bank": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankNotes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "number",
                            "description": "Type of note: -1 for warning, 1 for info"
                          },
                          "msg": {
                            "type": "string",
                            "description": "Message content"
                          }
                        },
                        "required": [
                          "type",
                          "msg"
                        ]
                      },
                      "description": "Additional bank instructions"
                    }
                  },
                  "required": [
                    "depositType",
                    "clabe",
                    "name",
                    "bank"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "TRY_BANK_TRANSFER"
                      ]
                    },
                    "iban": {
                      "type": "string",
                      "description": "International Bank Account Number"
                    },
                    "name": {
                      "type": "string",
                      "description": "Name of the account holder"
                    },
                    "bank": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "otp": {
                      "type": "string",
                      "description": "OTP for the transaction"
                    },
                    "bankNotes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "number",
                            "description": "Type of note: -1 for warning, 1 for info"
                          },
                          "msg": {
                            "type": "string",
                            "description": "Message content"
                          }
                        },
                        "required": [
                          "type",
                          "msg"
                        ]
                      },
                      "description": "Additional bank instructions"
                    }
                  },
                  "required": [
                    "depositType",
                    "iban",
                    "name",
                    "bank",
                    "otp"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "IDR_BANK_TRANSFER"
                      ]
                    },
                    "virtualAccount": {
                      "type": "string",
                      "description": "Virtual account number"
                    },
                    "name": {
                      "type": "string",
                      "description": "Name of the account holder"
                    },
                    "bank": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankNotes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "number",
                            "description": "Type of note: -1 for warning, 1 for info"
                          },
                          "msg": {
                            "type": "string",
                            "description": "Message content"
                          }
                        },
                        "required": [
                          "type",
                          "msg"
                        ]
                      },
                      "description": "Additional bank instructions"
                    }
                  },
                  "required": [
                    "depositType",
                    "virtualAccount",
                    "name",
                    "bank"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "THAI_QR"
                      ]
                    },
                    "qrCode": {
                      "type": "string",
                      "description": "QR code"
                    },
                    "otp": {
                      "type": "string",
                      "description": "OTP for the transaction"
                    },
                    "bankNotes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "number",
                            "description": "Type of note: -1 for warning, 1 for info"
                          },
                          "msg": {
                            "type": "string",
                            "description": "Message content"
                          }
                        },
                        "required": [
                          "type",
                          "msg"
                        ]
                      },
                      "description": "Additional bank instructions"
                    }
                  },
                  "required": [
                    "depositType",
                    "qrCode",
                    "otp"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "VIET_QR"
                      ]
                    },
                    "qrCode": {
                      "type": "string",
                      "description": "QR code"
                    },
                    "otp": {
                      "type": "string",
                      "description": "OTP for the transaction"
                    },
                    "bankNotes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "number",
                            "description": "Type of note: -1 for warning, 1 for info"
                          },
                          "msg": {
                            "type": "string",
                            "description": "Message content"
                          }
                        },
                        "required": [
                          "type",
                          "msg"
                        ]
                      },
                      "description": "Additional bank instructions"
                    }
                  },
                  "required": [
                    "depositType",
                    "qrCode",
                    "otp"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "GCASH"
                      ]
                    },
                    "qrCode": {
                      "type": "string",
                      "description": "QR code"
                    },
                    "otp": {
                      "type": "string",
                      "description": "OTP for the transaction"
                    },
                    "bankNotes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "number",
                            "description": "Type of note: -1 for warning, 1 for info"
                          },
                          "msg": {
                            "type": "string",
                            "description": "Message content"
                          }
                        },
                        "required": [
                          "type",
                          "msg"
                        ]
                      },
                      "description": "Additional bank instructions"
                    }
                  },
                  "required": [
                    "depositType",
                    "qrCode",
                    "otp"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "ARGENTINA_BANK_TRANSFER"
                      ]
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Account number"
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "accountNumber"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "ACH_US"
                      ]
                    },
                    "routingNumber": {
                      "type": "string",
                      "description": "US bank ABA routing number"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "US bank account number"
                    },
                    "beneficiaryName": {
                      "type": "string",
                      "description": "Beneficiary name on the account"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Name of the bank"
                    },
                    "bankAddress": {
                      "type": "string",
                      "description": "Address of the bank"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names (e.g. ACH, Wire)"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount in USD"
                    },
                    "referenceCode": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Reference code to include in the wire/ACH transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "routingNumber",
                    "accountNumber",
                    "beneficiaryName",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "ACH_PULL"
                      ]
                    }
                  },
                  "required": [
                    "depositType"
                  ],
                  "description": "Funds are pulled from the holder's own linked US bank account; no transfer instructions apply"
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "LOCALBANK"
                      ],
                      "description": "Deprecated generic local-bank payin type. Superseded by the corridor-specific deposit types (e.g. SEPA, ACH_US, GBP_BANK_TRANSFER, CLABE/SPEI, PIX, ARGENTINA_BANK_TRANSFER, BANK_DEPOSIT_<CC>). Still returned on some corridors and on historical records, so integrators must continue to handle it. Discover the applicable per-currency method via GET /v1/currencies/{currency}/payin-schema.",
                      "deprecated": true
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "GBP_BANK_TRANSFER"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "UK bank account number"
                    },
                    "sortCode": {
                      "type": "string",
                      "description": "UK sort code"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Name of the bank"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names (e.g. Faster Payments, CHAPS, BACS)"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount in GBP"
                    },
                    "referenceCode": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Reference code to include in the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "accountHolder",
                    "accountNumber",
                    "sortCode",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_COL"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_CL"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_BO"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_BR"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_NG"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_KE"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_GH"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_ZA"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_TZ"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_UG"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_RW"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_MW"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_ZM"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_BW"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_CD"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_XOF"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_XAF"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_NG"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_KE"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_GH"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_ZA"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_TZ"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_UG"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_RW"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_MW"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_ZM"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_BW"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_CD"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_XOF"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "depositType": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_XAF"
                      ]
                    },
                    "accountHolder": {
                      "type": "string",
                      "description": "Account holder name"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "Local bank account number"
                    },
                    "bankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "bankCountry": {
                      "type": "string",
                      "description": "ISO-3166 country code"
                    },
                    "routingCodes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                          },
                          "value": {
                            "type": "string",
                            "description": "Routing code value"
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ]
                      },
                      "description": "Routing identifiers (e.g. sort code, routing number)"
                    },
                    "schemes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Accepted payment scheme names for this account"
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Expected deposit amount"
                    },
                    "referenceCode": {
                      "type": "string",
                      "description": "Reference code for the transfer"
                    }
                  },
                  "required": [
                    "depositType",
                    "amount",
                    "referenceCode"
                  ]
                }
              ],
              "description": "Details of the deposit",
              "examples": [
                {
                  "accountHolder": "John Doe",
                  "iban": "DE8937XXXXXXXXXXXX3000",
                  "bic": "COBADEFFXXX",
                  "bankName": "Commerzbank",
                  "bankAddress": "Mainzer Landstrasse 151-153",
                  "bankCity": "Frankfurt",
                  "bankZipcode": "60327",
                  "bankCountry": "DE",
                  "amount": 1000,
                  "referenceCode": "ABC123",
                  "depositType": "SEPA"
                }
              ]
            },
            "depositInfoPending": {
              "type": "boolean",
              "description": "True while the payment instructions are still being prepared. Poll this deposit until it is false (or absent) before showing the instructions to the payer."
            },
            "complianceHold": {
              "type": "object",
              "properties": {
                "reason": {
                  "type": "string",
                  "enum": [
                    "screening",
                    "fiat_monitoring"
                  ],
                  "description": "Compliance hold reason"
                }
              },
              "required": [
                "reason"
              ],
              "description": "Present while the inbound transfer funding this deposit is held in provider compliance review. The deposit stays Reviewing (amount 0, never credited) until the hold clears (promote to Received) or the transfer is rejected/returned (terminalize)."
            }
          },
          "required": [
            "depositId",
            "createdAt",
            "expectedAmount",
            "amount",
            "currency",
            "fee",
            "expectedFee",
            "feeCurrency",
            "status",
            "depositInfo"
          ],
          "description": "Deposit Data"
        },
        "description": "Response schema for listing deposits"
      },
      "CreateOrderRequest": {
        "type": "object",
        "properties": {
          "quoteId": {
            "type": "string",
            "format": "uuid",
            "description": "The unique identifier of the created quote",
            "examples": [
              "123e4567-e89b-12d3-a456-426614174000",
              "987f6543-a21c-45d6-b789-012345678901"
            ]
          },
          "accountId": {
            "type": "string",
            "minLength": 1,
            "description": "Execute the order on behalf of this managed customer (the customerId from /v1/banking/customers). The customer becomes the order origin — the party whose balance/identity the movement belongs to. Must belong to your workspace; a foreign or unknown id is rejected.",
            "examples": [
              "jane.doe@example.com"
            ]
          },
          "destination": {
            "type": "object",
            "properties": {
              "contactId": {
                "type": "string",
                "minLength": 1,
                "description": "A saved contact of the on-behalf-of customer — the party receiving the funds."
              },
              "contactEmail": {
                "type": "string",
                "minLength": 1,
                "maxLength": 254,
                "format": "email",
                "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                "description": "Email identifying the receiving party (alternative to contactId)."
              },
              "addressId": {
                "type": "string",
                "minLength": 1,
                "description": "A saved destination method (payout address) of the on-behalf-of customer; its transfer details become the payout destination."
              }
            },
            "additionalProperties": false,
            "description": "Structured destination for on-behalf-of orders: pay out to a managed contact and/or one of the customer saved payout addresses. Requires accountId."
          },
          "originCountry": {
            "type": "string",
            "minLength": 2,
            "maxLength": 2,
            "description": "Collection country (ISO-3166 alpha-2) for a multi-country payin currency (CFA zones). Must be a valid collection country for the origin currency; omitted ⇒ the default collection country is used.",
            "examples": [
              "CI",
              "SN",
              "CM"
            ]
          },
          "userData": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "userType": {
                    "type": "string",
                    "enum": [
                      "individual"
                    ]
                  },
                  "firstName": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 50,
                    "description": "First name of the user making the deposit (or representative for business)",
                    "examples": [
                      "John",
                      "Alice",
                      "Bob"
                    ]
                  },
                  "lastName": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "Last name of the user making the deposit (or representative for business)",
                    "examples": [
                      "Doe",
                      "Smith",
                      "Johnson"
                    ]
                  },
                  "userEmail": {
                    "type": "string",
                    "maxLength": 254,
                    "format": "email",
                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                    "description": "Email of the user making the deposit",
                    "examples": [
                      "user@virtuabroker.com",
                      "john.doe@example.com",
                      "alice@example.com"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "maxLength": 150,
                    "description": "Address of the user making the deposit",
                    "examples": [
                      "123 Main St, Anytown, ES",
                      "456 Elm St, Anytown, ES",
                      "789 Oak St, Anytown, ES"
                    ]
                  },
                  "taxDocumentType": {
                    "type": "string",
                    "maxLength": 50,
                    "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                    "examples": [
                      "CC",
                      "NIT",
                      "CE",
                      "NIF",
                      "Other"
                    ]
                  },
                  "taxId": {
                    "type": "string",
                    "maxLength": 30,
                    "description": "Tax ID of the user making the deposit",
                    "examples": [
                      "123-45-6789",
                      "987-65-4321",
                      "111-22-3333"
                    ]
                  },
                  "country": {
                    "type": "string",
                    "enum": [
                      "US",
                      "CA",
                      "GB",
                      "DE",
                      "FR",
                      "AU",
                      "JP",
                      "KR",
                      "SE",
                      "NO",
                      "DK",
                      "FI",
                      "NL",
                      "BE",
                      "CH",
                      "AT",
                      "NZ",
                      "SG",
                      "IE",
                      "LU",
                      "PT",
                      "ES",
                      "IT",
                      "GR",
                      "CZ",
                      "PL",
                      "HU",
                      "SK",
                      "SI",
                      "EE",
                      "LT",
                      "LV",
                      "IS",
                      "MT",
                      "CY",
                      "HR",
                      "RO",
                      "BG",
                      "BR",
                      "AR",
                      "CL",
                      "MX",
                      "CO",
                      "PE",
                      "PA",
                      "UY",
                      "BO",
                      "ZA",
                      "NG",
                      "KE",
                      "GH",
                      "TZ",
                      "UG",
                      "RW",
                      "MW",
                      "ZM",
                      "BW",
                      "CD",
                      "CI",
                      "CM",
                      "IL",
                      "AE",
                      "QA",
                      "SA",
                      "OM",
                      "KW",
                      "BH",
                      "MY",
                      "PH",
                      "TH",
                      "VN",
                      "ID",
                      "IN",
                      "LK",
                      "NP",
                      "BD",
                      "PK",
                      "EG",
                      "MA",
                      "DZ",
                      "TN",
                      "JO",
                      "LB",
                      "TR",
                      "KH",
                      "MM",
                      "LA",
                      "EN",
                      "BT",
                      "VE",
                      "TW",
                      "HK",
                      "CN"
                    ],
                    "description": "Country code of the user making the deposit",
                    "examples": [
                      "ES",
                      "US",
                      "GB"
                    ]
                  },
                  "state": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "State of the user making the deposit",
                    "examples": [
                      "Madrid",
                      "New York",
                      "London"
                    ]
                  },
                  "postalCode": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 30,
                    "description": "Postal code of the user making the deposit",
                    "examples": [
                      "12345",
                      "67890",
                      "abcde"
                    ]
                  },
                  "city": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "City of the user making the deposit",
                    "examples": [
                      "Madrid",
                      "New York",
                      "London"
                    ]
                  },
                  "dob": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 30,
                    "description": "Date of birth of the user making the deposit",
                    "examples": [
                      "1990-01-01",
                      "1995-05-15",
                      "1988-12-31"
                    ]
                  },
                  "phoneNumber": {
                    "type": "string",
                    "maxLength": 30,
                    "description": "Phone number of the user making the deposit",
                    "examples": [
                      "+447700900123",
                      "+447700900456",
                      "+447700900789"
                    ]
                  },
                  "kycId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 300,
                    "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                    "examples": [
                      "kyc-12345",
                      "kyc-67890",
                      "kyc-abcde"
                    ]
                  },
                  "activity": {
                    "type": "string",
                    "description": "Activity of the user making the deposit",
                    "examples": [
                      "worker",
                      "business",
                      "student"
                    ]
                  }
                },
                "required": [
                  "userType",
                  "firstName",
                  "userEmail",
                  "country"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "userType": {
                    "type": "string",
                    "enum": [
                      "business"
                    ]
                  },
                  "businessName": {
                    "type": "string",
                    "maxLength": 150,
                    "description": "Business name (required when userType is business)",
                    "examples": [
                      "Acme Corp",
                      "Tech Solutions Inc",
                      "Global Services Ltd"
                    ]
                  },
                  "firstName": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 50,
                    "description": "First name of the user making the deposit (or representative for business)",
                    "examples": [
                      "John",
                      "Alice",
                      "Bob"
                    ]
                  },
                  "userEmail": {
                    "type": "string",
                    "maxLength": 254,
                    "format": "email",
                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                    "description": "Email of the user making the deposit",
                    "examples": [
                      "user@virtuabroker.com",
                      "john.doe@example.com",
                      "alice@example.com"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "maxLength": 150,
                    "description": "Address of the user making the deposit",
                    "examples": [
                      "123 Main St, Anytown, ES",
                      "456 Elm St, Anytown, ES",
                      "789 Oak St, Anytown, ES"
                    ]
                  },
                  "taxDocumentType": {
                    "type": "string",
                    "maxLength": 50,
                    "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                    "examples": [
                      "CC",
                      "NIT",
                      "CE",
                      "NIF",
                      "Other"
                    ]
                  },
                  "taxId": {
                    "type": "string",
                    "maxLength": 30,
                    "description": "Tax ID of the user making the deposit",
                    "examples": [
                      "123-45-6789",
                      "987-65-4321",
                      "111-22-3333"
                    ]
                  },
                  "country": {
                    "type": "string",
                    "enum": [
                      "US",
                      "CA",
                      "GB",
                      "DE",
                      "FR",
                      "AU",
                      "JP",
                      "KR",
                      "SE",
                      "NO",
                      "DK",
                      "FI",
                      "NL",
                      "BE",
                      "CH",
                      "AT",
                      "NZ",
                      "SG",
                      "IE",
                      "LU",
                      "PT",
                      "ES",
                      "IT",
                      "GR",
                      "CZ",
                      "PL",
                      "HU",
                      "SK",
                      "SI",
                      "EE",
                      "LT",
                      "LV",
                      "IS",
                      "MT",
                      "CY",
                      "HR",
                      "RO",
                      "BG",
                      "BR",
                      "AR",
                      "CL",
                      "MX",
                      "CO",
                      "PE",
                      "PA",
                      "UY",
                      "BO",
                      "ZA",
                      "NG",
                      "KE",
                      "GH",
                      "TZ",
                      "UG",
                      "RW",
                      "MW",
                      "ZM",
                      "BW",
                      "CD",
                      "CI",
                      "CM",
                      "IL",
                      "AE",
                      "QA",
                      "SA",
                      "OM",
                      "KW",
                      "BH",
                      "MY",
                      "PH",
                      "TH",
                      "VN",
                      "ID",
                      "IN",
                      "LK",
                      "NP",
                      "BD",
                      "PK",
                      "EG",
                      "MA",
                      "DZ",
                      "TN",
                      "JO",
                      "LB",
                      "TR",
                      "KH",
                      "MM",
                      "LA",
                      "EN",
                      "BT",
                      "VE",
                      "TW",
                      "HK",
                      "CN"
                    ],
                    "description": "Country code of the user making the deposit",
                    "examples": [
                      "ES",
                      "US",
                      "GB"
                    ]
                  },
                  "state": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "State of the user making the deposit",
                    "examples": [
                      "Madrid",
                      "New York",
                      "London"
                    ]
                  },
                  "postalCode": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 30,
                    "description": "Postal code of the user making the deposit",
                    "examples": [
                      "12345",
                      "67890",
                      "abcde"
                    ]
                  },
                  "city": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "City of the user making the deposit",
                    "examples": [
                      "Madrid",
                      "New York",
                      "London"
                    ]
                  },
                  "dob": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 30,
                    "description": "Date of birth of the user making the deposit",
                    "examples": [
                      "1990-01-01",
                      "1995-05-15",
                      "1988-12-31"
                    ]
                  },
                  "phoneNumber": {
                    "type": "string",
                    "maxLength": 30,
                    "description": "Phone number of the user making the deposit",
                    "examples": [
                      "+447700900123",
                      "+447700900456",
                      "+447700900789"
                    ]
                  },
                  "kycId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 300,
                    "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                    "examples": [
                      "kyc-12345",
                      "kyc-67890",
                      "kyc-abcde"
                    ]
                  },
                  "activity": {
                    "type": "string",
                    "description": "Activity of the user making the deposit",
                    "examples": [
                      "worker",
                      "business",
                      "student"
                    ]
                  }
                },
                "required": [
                  "userType",
                  "businessName",
                  "firstName",
                  "userEmail",
                  "country"
                ]
              }
            ],
            "description": "Required when the quote origin is not BALANCE (payer). If the payer email is new, include address, city, postalCode, state, country, firstName, lastName, taxId, kycId for deposit provisioning."
          },
          "destinationUserData": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "userType": {
                    "type": "string",
                    "enum": [
                      "individual"
                    ]
                  },
                  "firstName": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 50,
                    "description": "First name of the user making the deposit (or representative for business)",
                    "examples": [
                      "John",
                      "Alice",
                      "Bob"
                    ]
                  },
                  "lastName": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "Last name of the user making the deposit (or representative for business)",
                    "examples": [
                      "Doe",
                      "Smith",
                      "Johnson"
                    ]
                  },
                  "userEmail": {
                    "type": "string",
                    "maxLength": 254,
                    "format": "email",
                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                    "description": "Email of the user making the deposit",
                    "examples": [
                      "user@virtuabroker.com",
                      "john.doe@example.com",
                      "alice@example.com"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "maxLength": 150,
                    "description": "Address of the user making the deposit",
                    "examples": [
                      "123 Main St, Anytown, ES",
                      "456 Elm St, Anytown, ES",
                      "789 Oak St, Anytown, ES"
                    ]
                  },
                  "taxDocumentType": {
                    "type": "string",
                    "maxLength": 50,
                    "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                    "examples": [
                      "CC",
                      "NIT",
                      "CE",
                      "NIF",
                      "Other"
                    ]
                  },
                  "taxId": {
                    "type": "string",
                    "maxLength": 30,
                    "description": "Tax ID of the user making the deposit",
                    "examples": [
                      "123-45-6789",
                      "987-65-4321",
                      "111-22-3333"
                    ]
                  },
                  "country": {
                    "type": "string",
                    "enum": [
                      "US",
                      "CA",
                      "GB",
                      "DE",
                      "FR",
                      "AU",
                      "JP",
                      "KR",
                      "SE",
                      "NO",
                      "DK",
                      "FI",
                      "NL",
                      "BE",
                      "CH",
                      "AT",
                      "NZ",
                      "SG",
                      "IE",
                      "LU",
                      "PT",
                      "ES",
                      "IT",
                      "GR",
                      "CZ",
                      "PL",
                      "HU",
                      "SK",
                      "SI",
                      "EE",
                      "LT",
                      "LV",
                      "IS",
                      "MT",
                      "CY",
                      "HR",
                      "RO",
                      "BG",
                      "BR",
                      "AR",
                      "CL",
                      "MX",
                      "CO",
                      "PE",
                      "PA",
                      "UY",
                      "BO",
                      "ZA",
                      "NG",
                      "KE",
                      "GH",
                      "TZ",
                      "UG",
                      "RW",
                      "MW",
                      "ZM",
                      "BW",
                      "CD",
                      "CI",
                      "CM",
                      "IL",
                      "AE",
                      "QA",
                      "SA",
                      "OM",
                      "KW",
                      "BH",
                      "MY",
                      "PH",
                      "TH",
                      "VN",
                      "ID",
                      "IN",
                      "LK",
                      "NP",
                      "BD",
                      "PK",
                      "EG",
                      "MA",
                      "DZ",
                      "TN",
                      "JO",
                      "LB",
                      "TR",
                      "KH",
                      "MM",
                      "LA",
                      "EN",
                      "BT",
                      "VE",
                      "TW",
                      "HK",
                      "CN"
                    ],
                    "description": "Country code of the user making the deposit",
                    "examples": [
                      "ES",
                      "US",
                      "GB"
                    ]
                  },
                  "state": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "State of the user making the deposit",
                    "examples": [
                      "Madrid",
                      "New York",
                      "London"
                    ]
                  },
                  "postalCode": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 30,
                    "description": "Postal code of the user making the deposit",
                    "examples": [
                      "12345",
                      "67890",
                      "abcde"
                    ]
                  },
                  "city": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "City of the user making the deposit",
                    "examples": [
                      "Madrid",
                      "New York",
                      "London"
                    ]
                  },
                  "dob": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 30,
                    "description": "Date of birth of the user making the deposit",
                    "examples": [
                      "1990-01-01",
                      "1995-05-15",
                      "1988-12-31"
                    ]
                  },
                  "phoneNumber": {
                    "type": "string",
                    "maxLength": 30,
                    "description": "Phone number of the user making the deposit",
                    "examples": [
                      "+447700900123",
                      "+447700900456",
                      "+447700900789"
                    ]
                  },
                  "kycId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 300,
                    "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                    "examples": [
                      "kyc-12345",
                      "kyc-67890",
                      "kyc-abcde"
                    ]
                  },
                  "activity": {
                    "type": "string",
                    "description": "Activity of the user making the deposit",
                    "examples": [
                      "worker",
                      "business",
                      "student"
                    ]
                  }
                },
                "required": [
                  "userType",
                  "firstName",
                  "userEmail",
                  "country"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "userType": {
                    "type": "string",
                    "enum": [
                      "business"
                    ]
                  },
                  "businessName": {
                    "type": "string",
                    "maxLength": 150,
                    "description": "Business name (required when userType is business)",
                    "examples": [
                      "Acme Corp",
                      "Tech Solutions Inc",
                      "Global Services Ltd"
                    ]
                  },
                  "firstName": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 50,
                    "description": "First name of the user making the deposit (or representative for business)",
                    "examples": [
                      "John",
                      "Alice",
                      "Bob"
                    ]
                  },
                  "userEmail": {
                    "type": "string",
                    "maxLength": 254,
                    "format": "email",
                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                    "description": "Email of the user making the deposit",
                    "examples": [
                      "user@virtuabroker.com",
                      "john.doe@example.com",
                      "alice@example.com"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "maxLength": 150,
                    "description": "Address of the user making the deposit",
                    "examples": [
                      "123 Main St, Anytown, ES",
                      "456 Elm St, Anytown, ES",
                      "789 Oak St, Anytown, ES"
                    ]
                  },
                  "taxDocumentType": {
                    "type": "string",
                    "maxLength": 50,
                    "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                    "examples": [
                      "CC",
                      "NIT",
                      "CE",
                      "NIF",
                      "Other"
                    ]
                  },
                  "taxId": {
                    "type": "string",
                    "maxLength": 30,
                    "description": "Tax ID of the user making the deposit",
                    "examples": [
                      "123-45-6789",
                      "987-65-4321",
                      "111-22-3333"
                    ]
                  },
                  "country": {
                    "type": "string",
                    "enum": [
                      "US",
                      "CA",
                      "GB",
                      "DE",
                      "FR",
                      "AU",
                      "JP",
                      "KR",
                      "SE",
                      "NO",
                      "DK",
                      "FI",
                      "NL",
                      "BE",
                      "CH",
                      "AT",
                      "NZ",
                      "SG",
                      "IE",
                      "LU",
                      "PT",
                      "ES",
                      "IT",
                      "GR",
                      "CZ",
                      "PL",
                      "HU",
                      "SK",
                      "SI",
                      "EE",
                      "LT",
                      "LV",
                      "IS",
                      "MT",
                      "CY",
                      "HR",
                      "RO",
                      "BG",
                      "BR",
                      "AR",
                      "CL",
                      "MX",
                      "CO",
                      "PE",
                      "PA",
                      "UY",
                      "BO",
                      "ZA",
                      "NG",
                      "KE",
                      "GH",
                      "TZ",
                      "UG",
                      "RW",
                      "MW",
                      "ZM",
                      "BW",
                      "CD",
                      "CI",
                      "CM",
                      "IL",
                      "AE",
                      "QA",
                      "SA",
                      "OM",
                      "KW",
                      "BH",
                      "MY",
                      "PH",
                      "TH",
                      "VN",
                      "ID",
                      "IN",
                      "LK",
                      "NP",
                      "BD",
                      "PK",
                      "EG",
                      "MA",
                      "DZ",
                      "TN",
                      "JO",
                      "LB",
                      "TR",
                      "KH",
                      "MM",
                      "LA",
                      "EN",
                      "BT",
                      "VE",
                      "TW",
                      "HK",
                      "CN"
                    ],
                    "description": "Country code of the user making the deposit",
                    "examples": [
                      "ES",
                      "US",
                      "GB"
                    ]
                  },
                  "state": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "State of the user making the deposit",
                    "examples": [
                      "Madrid",
                      "New York",
                      "London"
                    ]
                  },
                  "postalCode": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 30,
                    "description": "Postal code of the user making the deposit",
                    "examples": [
                      "12345",
                      "67890",
                      "abcde"
                    ]
                  },
                  "city": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "City of the user making the deposit",
                    "examples": [
                      "Madrid",
                      "New York",
                      "London"
                    ]
                  },
                  "dob": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 30,
                    "description": "Date of birth of the user making the deposit",
                    "examples": [
                      "1990-01-01",
                      "1995-05-15",
                      "1988-12-31"
                    ]
                  },
                  "phoneNumber": {
                    "type": "string",
                    "maxLength": 30,
                    "description": "Phone number of the user making the deposit",
                    "examples": [
                      "+447700900123",
                      "+447700900456",
                      "+447700900789"
                    ]
                  },
                  "kycId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 300,
                    "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                    "examples": [
                      "kyc-12345",
                      "kyc-67890",
                      "kyc-abcde"
                    ]
                  },
                  "activity": {
                    "type": "string",
                    "description": "Activity of the user making the deposit",
                    "examples": [
                      "worker",
                      "business",
                      "student"
                    ]
                  }
                },
                "required": [
                  "userType",
                  "businessName",
                  "firstName",
                  "userEmail",
                  "country"
                ]
              }
            ],
            "description": "User data of the person/company that will receive the funds"
          },
          "destinationTransferData": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "BALANCE"
                    ]
                  }
                },
                "required": [
                  "type"
                ],
                "description": "Balance transfer details",
                "title": "Balance"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "iban": {
                    "type": "string",
                    "description": "IBAN number"
                  },
                  "bic": {
                    "type": "string",
                    "description": "BIC number (optional)"
                  },
                  "country": {
                    "type": "string",
                    "description": "Country code"
                  },
                  "accountType": {
                    "type": "string",
                    "enum": [
                      "PERSONAL",
                      "BUSINESS"
                    ],
                    "default": "PERSONAL",
                    "description": "Account type (optional)"
                  },
                  "city": {
                    "type": "string",
                    "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                  },
                  "postalCode": {
                    "type": "string",
                    "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                  },
                  "address": {
                    "type": "string",
                    "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "SEPA"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "iban",
                  "country",
                  "type"
                ],
                "description": "SEPA transfer details",
                "title": "SEPA"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "UK bank account number"
                  },
                  "sortCode": {
                    "type": "string",
                    "description": "UK sort code"
                  },
                  "country": {
                    "type": "string",
                    "enum": [
                      "GB"
                    ],
                    "default": "GB",
                    "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                  },
                  "accountType": {
                    "type": "string",
                    "enum": [
                      "PERSONAL",
                      "BUSINESS"
                    ],
                    "default": "PERSONAL",
                    "description": "Account type (optional)"
                  },
                  "city": {
                    "type": "string",
                    "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                  },
                  "postalCode": {
                    "type": "string",
                    "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                  },
                  "address": {
                    "type": "string",
                    "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "GBP_BANK_TRANSFER"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "accountNumber",
                  "sortCode",
                  "type"
                ],
                "description": "GBP domestic bank transfer details",
                "title": "BankDepositGB"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "US bank account number"
                  },
                  "routingNumber": {
                    "type": "string",
                    "description": "US ABA routing number"
                  },
                  "country": {
                    "type": "string",
                    "enum": [
                      "US"
                    ],
                    "default": "US",
                    "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                  },
                  "accountType": {
                    "type": "string",
                    "enum": [
                      "PERSONAL",
                      "BUSINESS"
                    ],
                    "default": "PERSONAL",
                    "description": "Account type (optional)"
                  },
                  "bankAccountType": {
                    "type": "string",
                    "enum": [
                      "CHECKING",
                      "SAVINGS"
                    ],
                    "default": "CHECKING",
                    "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                  },
                  "city": {
                    "type": "string",
                    "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                  },
                  "postalCode": {
                    "type": "string",
                    "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                  },
                  "state": {
                    "type": "string",
                    "pattern": "^[A-Z]{2}$",
                    "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                  },
                  "address": {
                    "type": "string",
                    "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "ACH_US"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "accountNumber",
                  "routingNumber",
                  "state",
                  "type"
                ],
                "description": "USD ACH transfer details",
                "title": "AchUS"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "linkedBankAccount"
                    ]
                  },
                  "accountLinkId": {
                    "type": "string",
                    "pattern": "^alnk_[0-9a-f]{24}$",
                    "description": "Identifier of one of the account holder own linked bank accounts",
                    "examples": [
                      "alnk_0123456789abcdef01234567"
                    ]
                  }
                },
                "required": [
                  "type",
                  "accountLinkId"
                ],
                "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                "title": "LinkedBankAccount",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "ETH"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "ETH destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "ETH"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "MATIC"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "MATIC destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "MATIC"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "SOL"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "SOL destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "SOL"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "TRON"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "TRON destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "TRON"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "CELO"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "CELO destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "CELO"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "BTC"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "BTC destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "BTC"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "SOLANA"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "SOLANA destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "SOLANA"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "XRP"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "XRP destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "XRP"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "CARDANO"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "CARDANO destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "CARDANO"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "BSC"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "BSC destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "BSC"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "ARBITRUM"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "ARBITRUM destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "ARBITRUM"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "OPTIMISM"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "OPTIMISM destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "OPTIMISM"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "AVALANCHE"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "AVALANCHE destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "AVALANCHE"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "BASE"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "BASE destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "BASE"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_COL"
                    ]
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name)."
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Bank account type — CORRIENTE or AHORRO."
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Recipient ID document number."
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Recipient ID document type — CC, CE, NIT, TI or PP."
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type",
                  "destinationBankCode",
                  "destinationBankAccountType",
                  "destinationDocumentType",
                  "destinationTaxId"
                ],
                "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                "title": "Bank Deposit COL"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "brebKey": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Bre-B key (llave) that identifies the recipient account"
                  },
                  "email": {
                    "type": "string",
                    "description": "Recipient email (optional contact for the Bre-B rail)"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Recipient phone number (optional contact for the Bre-B rail)"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BRE_B_COP"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "brebKey",
                  "type"
                ],
                "description": "Colombian Bre-B payout details",
                "title": "Bre-B COP"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "pattern": "^\\d{4}$",
                    "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                  },
                  "destinationBankAccountNumber": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Recipient bank account number"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Recipient ID document number"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "ACH_COP"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankCode",
                  "destinationBankAccountNumber",
                  "destinationBankAccountType",
                  "destinationDocumentType",
                  "destinationTaxId",
                  "type"
                ],
                "description": "Colombian ACH payout details",
                "title": "ACH COP"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (unused for TWD — no network discovery)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "minLength": 2,
                    "description": "Bank name (required — TWD payouts run over SWIFT)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_TW"
                    ]
                  },
                  "destinationBankBranch": {
                    "type": "string",
                    "minLength": 2,
                    "description": "Bank branch (required — TWD payouts run over SWIFT)"
                  },
                  "bic": {
                    "type": "string",
                    "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                    "description": "SWIFT BIC code (required for TWD payouts)"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Type of bank account (legacy, optional)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Tax ID of the recipient (legacy, optional)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Document type of the recipient (legacy, optional)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationBankName",
                  "type",
                  "destinationBankBranch",
                  "bic"
                ],
                "description": "Taiwan bank deposit details (SWIFT payout)",
                "title": "Bank Deposit TW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Bank code"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationBankBranch": {
                    "type": "string",
                    "description": "Bank branch"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Tax ID of the recipient"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_BR"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankCode",
                  "destinationBankAccount",
                  "destinationBankBranch",
                  "destinationTaxId",
                  "type"
                ],
                "description": "Brazilian bank deposit details",
                "title": "Bank Deposit BR"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPixCode": {
                    "type": "string",
                    "description": "PIX code"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Tax ID of the recipient"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "PIX_BR"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPixCode",
                  "destinationTaxId",
                  "type"
                ],
                "description": "Brazilian PIX details",
                "title": "PIX BR"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccountNumber": {
                    "type": "string",
                    "description": "Bank account number"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Name of the bank"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                    "description": "Tax ID of the recipient"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Type of bank account"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_VEN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccountNumber",
                  "destinationBankName",
                  "destinationTaxId",
                  "destinationBankAccountType",
                  "type"
                ],
                "description": "Venezuelan bank deposit details",
                "title": "Bank Deposit VEN"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Bank code"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                    "description": "Tax ID of the recipient"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Type of bank account"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "PHONE_DEPOSIT_VEN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankCode",
                  "destinationPhoneNumber",
                  "destinationTaxId",
                  "destinationBankAccountType",
                  "type"
                ],
                "description": "Venezuelan phone deposit details",
                "title": "Phone Deposit VEN"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_IN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit IN",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "IMPS"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "IMPS",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "THAI_QR"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Thai QR",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "VIET_QR"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Viet QR",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "GCASH"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "GCash",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Tax ID"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_PAYMENT_IN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "destinationTaxId",
                  "type"
                ],
                "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Mobile Payment IN",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Bank code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_VN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationBankCode",
                  "type"
                ],
                "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit VN",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "bic": {
                    "type": "string",
                    "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "destinationAddress": {
                    "type": "string",
                    "description": "Address line 1 of the recipient"
                  },
                  "destinationCity": {
                    "type": "string",
                    "description": "Recipient city (defaults to Hong Kong)"
                  },
                  "accountHolderName": {
                    "type": "string",
                    "description": "Bank account holder name if different from payee"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_HK"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "bic",
                  "destinationBankName",
                  "destinationAddress",
                  "type"
                ],
                "description": "Hong Kong bank deposit details (HKD bank corridor)",
                "title": "Bank Deposit HK"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "pattern": "^\\d+$",
                    "description": "CNAPS / bank institution code (numeric, variable length)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "destinationAddress": {
                    "type": "string",
                    "description": "Address line 1 of the recipient"
                  },
                  "destinationCity": {
                    "type": "string",
                    "description": "Recipient city"
                  },
                  "destinationState": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                  },
                  "destinationPostcode": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                  },
                  "destinationPhone": {
                    "type": "string",
                    "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                  },
                  "accountHolderName": {
                    "type": "string",
                    "description": "Bank account holder name if different from payee"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_CN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationBankCode",
                  "destinationBankName",
                  "destinationAddress",
                  "destinationCity",
                  "destinationState",
                  "destinationPostcode",
                  "type"
                ],
                "description": "China mainland bank deposit details (CNY bank corridor)",
                "title": "Bank Deposit CN"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_AR"
                    ]
                  },
                  "destinationCBU": {
                    "type": "string",
                    "description": "CBU — 22-digit bank account key (legacy, optional)"
                  },
                  "destinationCVU": {
                    "type": "string",
                    "description": "CVU — 22-digit virtual account key (legacy, optional)"
                  },
                  "destinationAlias": {
                    "type": "string",
                    "description": "Account alias (legacy, optional)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Document type of the recipient (legacy, optional)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type",
                  "destinationTaxId"
                ],
                "description": "Argentinian bank deposit details",
                "title": "Bank Deposit AR"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Recipient bank name (required for Chilean bank payouts)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_CL"
                    ]
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "minLength": 1,
                    "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Document type of the recipient (legacy, optional)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationBankName",
                  "type",
                  "destinationBankAccountType",
                  "destinationTaxId"
                ],
                "description": "Chilean bank deposit details",
                "title": "Bank Deposit CL"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "minLength": 2,
                    "maxLength": 30,
                    "description": "Recipient name (required, 2–30 characters)"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 11,
                    "description": "Bank account number (max 11 digits for Bolivian accounts)"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (unused for BOB — no network discovery)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "maxLength": 20,
                    "description": "Bank name (optional, max 20 characters)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_BO"
                    ]
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 15,
                    "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type",
                  "destinationTaxId"
                ],
                "description": "Bolivian bank deposit details",
                "title": "Bank Deposit BO"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_PE"
                    ]
                  },
                  "destinationCCI": {
                    "type": "string",
                    "description": "CCI — 20-digit interbank account code (legacy, optional)"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Account type (corriente/ahorro) (legacy, optional)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Document type of the recipient (legacy, optional)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationNetworkId",
                  "type"
                ],
                "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit PE",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "pattern": "^\\d{3}$",
                    "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                  },
                  "destinationBankAccountNumber": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 20,
                    "description": "Recipient bank account number (max 20)"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "enum": [
                      "CORRIENTE",
                      "AHORROS",
                      "PHONE"
                    ],
                    "description": "Bank account type"
                  },
                  "destinationCCI": {
                    "type": "string",
                    "pattern": "^\\d{1,20}$",
                    "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "enum": [
                      "CC",
                      "CE",
                      "RUC",
                      "PAS",
                      "PAR",
                      "LMI",
                      "OTHER"
                    ],
                    "description": "Recipient identification type"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 50,
                    "description": "Recipient identification number (max 50)"
                  },
                  "email": {
                    "type": "string",
                    "pattern": "^.+@.+\\..+$",
                    "description": "Recipient email (required for PEN payouts)"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "pattern": "^\\d{1,9}$",
                    "description": "Recipient phone number (required, max 9 digits)"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_PEN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankCode",
                  "destinationBankAccountNumber",
                  "destinationBankAccountType",
                  "destinationCCI",
                  "destinationDocumentType",
                  "destinationTaxId",
                  "email",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Peruvian bank deposit details (bank-code payout corridor).",
                "title": "Bank Deposit PEN"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_NG"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Nigeria bank deposit details",
                "title": "Bank Deposit NG"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_KE"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Kenya bank deposit details",
                "title": "Bank Deposit KE"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_GH"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit GH",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_ZA"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "South Africa bank deposit details",
                "title": "Bank Deposit ZA"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_TZ"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Tanzania bank deposit details",
                "title": "Bank Deposit TZ"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_UG"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Uganda bank deposit details",
                "title": "Bank Deposit UG"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_RW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Rwanda bank deposit details",
                "title": "Bank Deposit RW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_MW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Malawi bank deposit details",
                "title": "Bank Deposit MW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_ZM"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Zambia bank deposit details",
                "title": "Bank Deposit ZM"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_BW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Botswana bank deposit details",
                "title": "Bank Deposit BW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_CD"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit CD",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_XOF"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "West African CFA bank deposit details",
                "title": "Bank Deposit XOF"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_XAF"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Central African CFA bank deposit details",
                "title": "Bank Deposit XAF"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_NG"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Nigeria mobile money details",
                "title": "Mobile Money NG"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_KE"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Kenya mobile money details",
                "title": "Mobile Money KE"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_GH"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Mobile Money GH",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_ZA"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "South Africa mobile money details",
                "title": "Mobile Money ZA"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_TZ"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Tanzania mobile money details",
                "title": "Mobile Money TZ"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_UG"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Uganda mobile money details",
                "title": "Mobile Money UG"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_RW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Rwanda mobile money details",
                "title": "Mobile Money RW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_MW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Malawi mobile money details",
                "title": "Mobile Money MW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_ZM"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Zambia mobile money details",
                "title": "Mobile Money ZM"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_BW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Botswana mobile money details",
                "title": "Mobile Money BW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_CD"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Mobile Money CD",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_XOF"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "West African CFA mobile money details",
                "title": "Mobile Money XOF"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_XAF"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Central African CFA mobile money details",
                "title": "Mobile Money XAF"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Bank code"
                  },
                  "destinationBankAccountNumber": {
                    "type": "string",
                    "description": "Bank account number (18-digit CLABE)"
                  },
                  "numericReference": {
                    "type": "string",
                    "description": "Numeric reference"
                  },
                  "notesReference": {
                    "type": "string",
                    "description": "Notes reference"
                  },
                  "destinationClabe": {
                    "type": "string",
                    "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_MX"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccountNumber",
                  "type"
                ],
                "description": "Mexican bank deposit details",
                "title": "Bank Deposit MX"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPseNumber": {
                    "type": "string",
                    "description": "PSE number"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "PSE"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPseNumber",
                  "type"
                ],
                "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "PSE",
                "deprecated": true
              }
            ],
            "description": "The details required for the end user destination transfer method."
          },
          "externalReference": {
            "type": "string",
            "description": "Your own reference for this order, echoed back on the order object",
            "examples": [
              "order-2026-000123"
            ]
          },
          "integrationSessionId": {
            "type": "string",
            "pattern": "^int_[A-Za-z0-9]{16}$",
            "description": "Integration session ID for partner attribution tracking",
            "examples": [
              "int_a1B2c3D4e5F6g7H8"
            ]
          },
          "tradeDetails": {
            "type": "object",
            "properties": {
              "businessType": {
                "type": "string",
                "enum": [
                  "GOODS_TRADE"
                ]
              },
              "contractNo": {
                "type": "string",
                "minLength": 1
              },
              "website": {
                "type": "string",
                "format": "uri"
              },
              "products": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string",
                      "minLength": 1
                    },
                    "quantity": {
                      "type": "number",
                      "minimum": 0,
                      "exclusiveMinimum": true
                    },
                    "unit": {
                      "type": "string",
                      "minLength": 1
                    },
                    "category": {
                      "type": "string",
                      "minLength": 1
                    }
                  },
                  "required": [
                    "name",
                    "quantity",
                    "unit"
                  ],
                  "additionalProperties": false
                },
                "minItems": 1
              }
            },
            "required": [
              "businessType",
              "contractNo",
              "products"
            ],
            "additionalProperties": false,
            "description": "Trade context for regulated payout corridors that require a transaction document (e.g. CNY SAFE compliance): goods/services type, contract number, and itemised product list. Collected at order creation for bank-deposit CN orders."
          }
        },
        "required": [
          "quoteId"
        ],
        "additionalProperties": false,
        "description": "Create an order from a quote. userData (payer) is required unless the quote uses origin rail BALANCE.",
        "title": "Create Order with User Data"
      },
      "CreateOrderResponse": {
        "type": "object",
        "properties": {
          "orderId": {
            "type": "string",
            "description": "ID of the order",
            "examples": [
              "01CLFXMT67II",
              "2R7E5Y5KFXP8",
              "4FWWRE3Y2URM"
            ]
          },
          "deposit": {
            "type": "object",
            "properties": {
              "depositId": {
                "type": "string",
                "minLength": 1,
                "description": "ID of the deposit. Normally a 12-character internal id; deposits created before mid-2026 may carry a longer legacy id. Treat it as an opaque string."
              },
              "externalReference": {
                "type": "string",
                "minLength": 1,
                "maxLength": 128,
                "description": "Your own reference for this deposit. Stored as-is and returned on create, detail and list, so you can look the deposit up by it after a network timeout instead of retrying blind. Not interpreted by VirtuaBroker and not shown to the payer — for the payer's transfer reference use depositInfo.referenceCode.",
                "examples": [
                  "partner-ref-0001",
                  "inv_2026_00417"
                ]
              },
              "userData": {
                "oneOf": [
                  {
                    "type": "object",
                    "properties": {
                      "userType": {
                        "type": "string",
                        "enum": [
                          "individual"
                        ]
                      },
                      "firstName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 50,
                        "description": "First name of the user making the deposit (or representative for business)",
                        "examples": [
                          "John",
                          "Alice",
                          "Bob"
                        ]
                      },
                      "lastName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "Last name of the user making the deposit (or representative for business)",
                        "examples": [
                          "Doe",
                          "Smith",
                          "Johnson"
                        ]
                      },
                      "userEmail": {
                        "type": "string",
                        "maxLength": 254,
                        "format": "email",
                        "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                        "description": "Email of the user making the deposit",
                        "examples": [
                          "user@virtuabroker.com",
                          "john.doe@example.com",
                          "alice@example.com"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "maxLength": 150,
                        "description": "Address of the user making the deposit",
                        "examples": [
                          "123 Main St, Anytown, ES",
                          "456 Elm St, Anytown, ES",
                          "789 Oak St, Anytown, ES"
                        ]
                      },
                      "taxDocumentType": {
                        "type": "string",
                        "maxLength": 50,
                        "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                        "examples": [
                          "CC",
                          "NIT",
                          "CE",
                          "NIF",
                          "Other"
                        ]
                      },
                      "taxId": {
                        "type": "string",
                        "maxLength": 30,
                        "description": "Tax ID of the user making the deposit",
                        "examples": [
                          "123-45-6789",
                          "987-65-4321",
                          "111-22-3333"
                        ]
                      },
                      "country": {
                        "type": "string",
                        "enum": [
                          "US",
                          "CA",
                          "GB",
                          "DE",
                          "FR",
                          "AU",
                          "JP",
                          "KR",
                          "SE",
                          "NO",
                          "DK",
                          "FI",
                          "NL",
                          "BE",
                          "CH",
                          "AT",
                          "NZ",
                          "SG",
                          "IE",
                          "LU",
                          "PT",
                          "ES",
                          "IT",
                          "GR",
                          "CZ",
                          "PL",
                          "HU",
                          "SK",
                          "SI",
                          "EE",
                          "LT",
                          "LV",
                          "IS",
                          "MT",
                          "CY",
                          "HR",
                          "RO",
                          "BG",
                          "BR",
                          "AR",
                          "CL",
                          "MX",
                          "CO",
                          "PE",
                          "PA",
                          "UY",
                          "BO",
                          "ZA",
                          "NG",
                          "KE",
                          "GH",
                          "TZ",
                          "UG",
                          "RW",
                          "MW",
                          "ZM",
                          "BW",
                          "CD",
                          "CI",
                          "CM",
                          "IL",
                          "AE",
                          "QA",
                          "SA",
                          "OM",
                          "KW",
                          "BH",
                          "MY",
                          "PH",
                          "TH",
                          "VN",
                          "ID",
                          "IN",
                          "LK",
                          "NP",
                          "BD",
                          "PK",
                          "EG",
                          "MA",
                          "DZ",
                          "TN",
                          "JO",
                          "LB",
                          "TR",
                          "KH",
                          "MM",
                          "LA",
                          "EN",
                          "BT",
                          "VE",
                          "TW",
                          "HK",
                          "CN"
                        ],
                        "description": "Country code of the user making the deposit",
                        "examples": [
                          "ES",
                          "US",
                          "GB"
                        ]
                      },
                      "state": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "State of the user making the deposit",
                        "examples": [
                          "Madrid",
                          "New York",
                          "London"
                        ]
                      },
                      "postalCode": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 30,
                        "description": "Postal code of the user making the deposit",
                        "examples": [
                          "12345",
                          "67890",
                          "abcde"
                        ]
                      },
                      "city": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "City of the user making the deposit",
                        "examples": [
                          "Madrid",
                          "New York",
                          "London"
                        ]
                      },
                      "dob": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 30,
                        "description": "Date of birth of the user making the deposit",
                        "examples": [
                          "1990-01-01",
                          "1995-05-15",
                          "1988-12-31"
                        ]
                      },
                      "phoneNumber": {
                        "type": "string",
                        "maxLength": 30,
                        "description": "Phone number of the user making the deposit",
                        "examples": [
                          "+447700900123",
                          "+447700900456",
                          "+447700900789"
                        ]
                      },
                      "kycId": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 300,
                        "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                        "examples": [
                          "kyc-12345",
                          "kyc-67890",
                          "kyc-abcde"
                        ]
                      },
                      "activity": {
                        "type": "string",
                        "description": "Activity of the user making the deposit",
                        "examples": [
                          "worker",
                          "business",
                          "student"
                        ]
                      }
                    },
                    "required": [
                      "userType",
                      "firstName",
                      "userEmail",
                      "country"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "userType": {
                        "type": "string",
                        "enum": [
                          "business"
                        ]
                      },
                      "businessName": {
                        "type": "string",
                        "maxLength": 150,
                        "description": "Business name (required when userType is business)",
                        "examples": [
                          "Acme Corp",
                          "Tech Solutions Inc",
                          "Global Services Ltd"
                        ]
                      },
                      "firstName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 50,
                        "description": "First name of the user making the deposit (or representative for business)",
                        "examples": [
                          "John",
                          "Alice",
                          "Bob"
                        ]
                      },
                      "userEmail": {
                        "type": "string",
                        "maxLength": 254,
                        "format": "email",
                        "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                        "description": "Email of the user making the deposit",
                        "examples": [
                          "user@virtuabroker.com",
                          "john.doe@example.com",
                          "alice@example.com"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "maxLength": 150,
                        "description": "Address of the user making the deposit",
                        "examples": [
                          "123 Main St, Anytown, ES",
                          "456 Elm St, Anytown, ES",
                          "789 Oak St, Anytown, ES"
                        ]
                      },
                      "taxDocumentType": {
                        "type": "string",
                        "maxLength": 50,
                        "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                        "examples": [
                          "CC",
                          "NIT",
                          "CE",
                          "NIF",
                          "Other"
                        ]
                      },
                      "taxId": {
                        "type": "string",
                        "maxLength": 30,
                        "description": "Tax ID of the user making the deposit",
                        "examples": [
                          "123-45-6789",
                          "987-65-4321",
                          "111-22-3333"
                        ]
                      },
                      "country": {
                        "type": "string",
                        "enum": [
                          "US",
                          "CA",
                          "GB",
                          "DE",
                          "FR",
                          "AU",
                          "JP",
                          "KR",
                          "SE",
                          "NO",
                          "DK",
                          "FI",
                          "NL",
                          "BE",
                          "CH",
                          "AT",
                          "NZ",
                          "SG",
                          "IE",
                          "LU",
                          "PT",
                          "ES",
                          "IT",
                          "GR",
                          "CZ",
                          "PL",
                          "HU",
                          "SK",
                          "SI",
                          "EE",
                          "LT",
                          "LV",
                          "IS",
                          "MT",
                          "CY",
                          "HR",
                          "RO",
                          "BG",
                          "BR",
                          "AR",
                          "CL",
                          "MX",
                          "CO",
                          "PE",
                          "PA",
                          "UY",
                          "BO",
                          "ZA",
                          "NG",
                          "KE",
                          "GH",
                          "TZ",
                          "UG",
                          "RW",
                          "MW",
                          "ZM",
                          "BW",
                          "CD",
                          "CI",
                          "CM",
                          "IL",
                          "AE",
                          "QA",
                          "SA",
                          "OM",
                          "KW",
                          "BH",
                          "MY",
                          "PH",
                          "TH",
                          "VN",
                          "ID",
                          "IN",
                          "LK",
                          "NP",
                          "BD",
                          "PK",
                          "EG",
                          "MA",
                          "DZ",
                          "TN",
                          "JO",
                          "LB",
                          "TR",
                          "KH",
                          "MM",
                          "LA",
                          "EN",
                          "BT",
                          "VE",
                          "TW",
                          "HK",
                          "CN"
                        ],
                        "description": "Country code of the user making the deposit",
                        "examples": [
                          "ES",
                          "US",
                          "GB"
                        ]
                      },
                      "state": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "State of the user making the deposit",
                        "examples": [
                          "Madrid",
                          "New York",
                          "London"
                        ]
                      },
                      "postalCode": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 30,
                        "description": "Postal code of the user making the deposit",
                        "examples": [
                          "12345",
                          "67890",
                          "abcde"
                        ]
                      },
                      "city": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "City of the user making the deposit",
                        "examples": [
                          "Madrid",
                          "New York",
                          "London"
                        ]
                      },
                      "dob": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 30,
                        "description": "Date of birth of the user making the deposit",
                        "examples": [
                          "1990-01-01",
                          "1995-05-15",
                          "1988-12-31"
                        ]
                      },
                      "phoneNumber": {
                        "type": "string",
                        "maxLength": 30,
                        "description": "Phone number of the user making the deposit",
                        "examples": [
                          "+447700900123",
                          "+447700900456",
                          "+447700900789"
                        ]
                      },
                      "kycId": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 300,
                        "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                        "examples": [
                          "kyc-12345",
                          "kyc-67890",
                          "kyc-abcde"
                        ]
                      },
                      "activity": {
                        "type": "string",
                        "description": "Activity of the user making the deposit",
                        "examples": [
                          "worker",
                          "business",
                          "student"
                        ]
                      }
                    },
                    "required": [
                      "userType",
                      "businessName",
                      "firstName",
                      "userEmail",
                      "country"
                    ]
                  }
                ],
                "description": "User data of the person/company making the deposit",
                "examples": [
                  {
                    "userType": "individual",
                    "firstName": "John",
                    "lastName": "Doe",
                    "userEmail": "user@virtuabroker.com",
                    "address": "123 Main St, Anytown, ES",
                    "taxId": "123-45-6789",
                    "country": "ES"
                  },
                  {
                    "userType": "individual",
                    "firstName": "Alice",
                    "lastName": "Smith",
                    "userEmail": "alice@example.com",
                    "address": "456 Elm St, Anytown, ES",
                    "taxId": "987-65-4321",
                    "country": "ES"
                  }
                ]
              },
              "createdAt": {
                "type": "number",
                "description": "Creation time of the deposit",
                "examples": [
                  1723027132,
                  1723027133,
                  1723027134
                ]
              },
              "rail": {
                "type": "string",
                "enum": [
                  "BALANCE",
                  "SEPA",
                  "BTC",
                  "ETH",
                  "MATIC",
                  "POLYGON",
                  "CELO",
                  "TRON",
                  "SOLANA",
                  "ARBITRUM",
                  "OPTIMISM",
                  "AVALANCHE",
                  "BSC",
                  "BASE",
                  "XRP",
                  "PIX_BR",
                  "UPI",
                  "IMPS",
                  "TRY_BANK_TRANSFER",
                  "AED_BANK_TRANSFER",
                  "SPEI",
                  "IDR_BANK_TRANSFER",
                  "CREDIT_CARD",
                  "THAI_QR",
                  "VIET_QR",
                  "GCASH",
                  "ARGENTINA_BANK_TRANSFER",
                  "PSE",
                  "CLABE",
                  "PIX",
                  "BANK_DEPOSIT_COL",
                  "BANK_DEPOSIT_AR",
                  "BANK_DEPOSIT_CL",
                  "BANK_DEPOSIT_PE",
                  "BANK_DEPOSIT_BO",
                  "BANK_DEPOSIT_BR",
                  "BANK_DEPOSIT_NG",
                  "BANK_DEPOSIT_KE",
                  "BANK_DEPOSIT_GH",
                  "BANK_DEPOSIT_ZA",
                  "BANK_DEPOSIT_TZ",
                  "BANK_DEPOSIT_UG",
                  "BANK_DEPOSIT_RW",
                  "BANK_DEPOSIT_MW",
                  "BANK_DEPOSIT_ZM",
                  "BANK_DEPOSIT_BW",
                  "BANK_DEPOSIT_CD",
                  "BANK_DEPOSIT_XOF",
                  "BANK_DEPOSIT_XAF",
                  "MOBILE_MONEY_NG",
                  "MOBILE_MONEY_KE",
                  "MOBILE_MONEY_GH",
                  "MOBILE_MONEY_ZA",
                  "MOBILE_MONEY_TZ",
                  "MOBILE_MONEY_UG",
                  "MOBILE_MONEY_RW",
                  "MOBILE_MONEY_MW",
                  "MOBILE_MONEY_ZM",
                  "MOBILE_MONEY_BW",
                  "MOBILE_MONEY_CD",
                  "MOBILE_MONEY_XOF",
                  "MOBILE_MONEY_XAF",
                  "ACH_US",
                  "GBP_BANK_TRANSFER"
                ],
                "description": "Rail of the deposit"
              },
              "receivedAt": {
                "type": "number",
                "description": "Unix ms timestamp of when the funds for this deposit ARRIVED — recorded when the incoming payment is matched to the deposit, which is before it is credited. Present whenever funds have arrived, including a deposit whose funds are still held in review; omitted entirely when no funds ever arrived, so a never-funded or cancelled deposit has no value here and its presence is a reliable settlement signal for reconciliation. Identical on GET /v1/deposits and GET /v1/deposits/{depositId}. Note that the deposit object embedded in order and operation responses does not yet apply this rule — it returns the stored value. Not the creation time — use createdAt for that.",
                "examples": [
                  1723027132000,
                  1723027133000,
                  1723027134000
                ]
              },
              "expectedAmount": {
                "type": "number",
                "minimum": 0,
                "description": "Amount expected of the deposit",
                "examples": [
                  1000,
                  2000,
                  3000
                ]
              },
              "amount": {
                "type": "number",
                "minimum": 0,
                "description": "Amount received of the deposit",
                "examples": [
                  1000,
                  2000,
                  3000
                ]
              },
              "currency": {
                "anyOf": [
                  {
                    "type": "string",
                    "enum": [
                      "EUR",
                      "USD",
                      "GBP",
                      "BRL",
                      "MXN",
                      "ARS",
                      "COP",
                      "PEN",
                      "NGN",
                      "KES",
                      "TZS",
                      "UGX",
                      "RWF",
                      "MWK",
                      "ZMW",
                      "XOF",
                      "XAF",
                      "BWP"
                    ]
                  },
                  {
                    "type": "string",
                    "enum": [
                      "USDC",
                      "USDT",
                      "CUSD",
                      "BTC",
                      "ETH",
                      "POL",
                      "SOL",
                      "TRX",
                      "AVAX",
                      "XRP",
                      "BNB"
                    ]
                  }
                ],
                "description": "Currency of the deposit",
                "examples": [
                  "EUR",
                  "BRL"
                ]
              },
              "fee": {
                "type": "number",
                "minimum": 0,
                "description": "Fee for the deposit. This value is written once the deposit has been executed. Meanwhile it will appear 0.",
                "example": 10
              },
              "expectedFee": {
                "type": "number",
                "minimum": 0,
                "description": "Fee for the deposit. This value is correlated with the expected amount for the deposit.",
                "examples": [
                  10,
                  20,
                  30
                ]
              },
              "feeCurrency": {
                "anyOf": [
                  {
                    "type": "string",
                    "enum": [
                      "EUR",
                      "USD",
                      "GBP",
                      "BRL",
                      "MXN",
                      "ARS",
                      "COP",
                      "PEN",
                      "NGN",
                      "KES",
                      "TZS",
                      "UGX",
                      "RWF",
                      "MWK",
                      "ZMW",
                      "XOF",
                      "XAF",
                      "BWP"
                    ]
                  },
                  {
                    "type": "string",
                    "enum": [
                      "USDC",
                      "USDT",
                      "CUSD",
                      "BTC",
                      "ETH",
                      "POL",
                      "SOL",
                      "TRX",
                      "AVAX",
                      "XRP",
                      "BNB"
                    ]
                  }
                ],
                "description": "Currency of the fee",
                "examples": [
                  "EUR",
                  "BRL"
                ]
              },
              "status": {
                "anyOf": [
                  {
                    "type": "string",
                    "enum": [
                      "Pending",
                      "Processing",
                      "Success",
                      "Failed",
                      "Canceled",
                      "Reviewing"
                    ],
                    "description": "Common status values that are shared across all operation types",
                    "examples": [
                      "Pending",
                      "Processing",
                      "Success",
                      "Failed",
                      "Canceled",
                      "Reviewing"
                    ]
                  },
                  {
                    "type": "string",
                    "enum": [
                      "PendingCancel",
                      "Received"
                    ]
                  }
                ],
                "description": "Status of the deposit",
                "examples": [
                  "Pending",
                  "Success",
                  "Failed",
                  "Received",
                  "PendingCancel"
                ]
              },
              "depositInfo": {
                "oneOf": [
                  {
                    "type": "object",
                    "properties": {
                      "accountHolder": {
                        "type": "string",
                        "description": "Name of the account holder",
                        "example": "John Doe"
                      },
                      "iban": {
                        "type": "string",
                        "description": "SEPA Bank Account Number",
                        "example": "DE8937XXXXXXXXXXXX3000"
                      },
                      "bic": {
                        "type": "string",
                        "description": "Bank BIC/SWIFT code",
                        "example": "DEUTDEFF"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Name of the bank",
                        "example": "Deutsche Bank"
                      },
                      "bankAddress": {
                        "type": "string",
                        "description": "Address of the bank",
                        "example": "Taunusanlage 12"
                      },
                      "bankCity": {
                        "type": "string",
                        "description": "City of the bank",
                        "example": "Frankfurt am Main"
                      },
                      "bankZipcode": {
                        "type": "string",
                        "description": "Zipcode of the bank",
                        "example": "60325"
                      },
                      "bankCountry": {
                        "type": "string",
                        "enum": [
                          "US",
                          "CA",
                          "GB",
                          "DE",
                          "FR",
                          "AU",
                          "JP",
                          "KR",
                          "SE",
                          "NO",
                          "DK",
                          "FI",
                          "NL",
                          "BE",
                          "CH",
                          "AT",
                          "NZ",
                          "SG",
                          "IE",
                          "LU",
                          "PT",
                          "ES",
                          "IT",
                          "GR",
                          "CZ",
                          "PL",
                          "HU",
                          "SK",
                          "SI",
                          "EE",
                          "LT",
                          "LV",
                          "IS",
                          "MT",
                          "CY",
                          "HR",
                          "RO",
                          "BG",
                          "BR",
                          "AR",
                          "CL",
                          "MX",
                          "CO",
                          "PE",
                          "PA",
                          "UY",
                          "BO",
                          "ZA",
                          "NG",
                          "KE",
                          "GH",
                          "TZ",
                          "UG",
                          "RW",
                          "MW",
                          "ZM",
                          "BW",
                          "CD",
                          "CI",
                          "CM",
                          "IL",
                          "AE",
                          "QA",
                          "SA",
                          "OM",
                          "KW",
                          "BH",
                          "MY",
                          "PH",
                          "TH",
                          "VN",
                          "ID",
                          "IN",
                          "LK",
                          "NP",
                          "BD",
                          "PK",
                          "EG",
                          "MA",
                          "DZ",
                          "TN",
                          "JO",
                          "LB",
                          "TR",
                          "KH",
                          "MM",
                          "LA",
                          "EN",
                          "BT",
                          "VE",
                          "TW",
                          "HK",
                          "CN"
                        ],
                        "description": "Country of the bank",
                        "example": "DE"
                      },
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "SEPA"
                        ]
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount. It can be 0 for open-amount bank transfers where the sender chooses the final amount from their bank.",
                        "example": 1000
                      },
                      "referenceCode": {
                        "type": "string",
                        "minLength": 1,
                        "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order. The user must include this code when making the deposit to ensure accurate processing. In cases where the reference code is incorrect or missing, we manually match orders based on the sender's name and other available details. In case the deposit is not matched, we will mark the order as Reviewing and the system will require manual attention.",
                        "example": "REF123456"
                      },
                      "extraDepositMethods": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "methodType": {
                              "type": "string",
                              "enum": [
                                "HOSTED_CHECKOUT"
                              ],
                              "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                            },
                            "url": {
                              "type": "string",
                              "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                              "example": "https://checkout.example.com/pay/abc123"
                            },
                            "callbackUrl": {
                              "type": "string",
                              "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Payment reference for this method (equals the deposit/order reference)"
                            },
                            "amount": {
                              "type": "number",
                              "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                            },
                            "currency": {
                              "type": "string",
                              "description": "Currency of this method"
                            },
                            "expiresAt": {
                              "type": "number",
                              "description": "Unix ms after which `url` is no longer valid, when known"
                            }
                          },
                          "required": [
                            "methodType",
                            "url"
                          ],
                          "description": "An additional, optional way to pay this deposit"
                        },
                        "description": "Additional, optional ways to pay this same deposit (e.g. a hosted card page). The bank details above remain the primary method; ignore this field if you only support bank transfer."
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ],
                    "description": "Detailed information about a bank deposit, including the amount and a unique reference code for identification."
                  },
                  {
                    "type": "object",
                    "properties": {
                      "address": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Crypto wallet address",
                        "example": "0x1A2b3C4d5E6f7890AbCdEf1234567890AbCdEf12"
                      },
                      "network": {
                        "type": "string",
                        "enum": [
                          "MATIC",
                          "ETH",
                          "CELO",
                          "TRON",
                          "BTC",
                          "SOLANA",
                          "XRP",
                          "CARDANO",
                          "BSC",
                          "ARBITRUM",
                          "OPTIMISM",
                          "AVALANCHE",
                          "BASE"
                        ],
                        "description": "Network for the deposit for crypto deposits",
                        "examples": [
                          "ETH",
                          "MATIC",
                          "CELO"
                        ]
                      },
                      "memo": {
                        "type": "string",
                        "description": "Optional memo for the transaction",
                        "example": "Payment for services"
                      },
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "CRYPTO"
                        ]
                      },
                      "qrCode": {
                        "type": "string",
                        "description": "Base64-encoded QR image for the deposit address",
                        "example": "iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAIAAADTED8xAAABpklEQVR42u3BAQ0AAADCoPdPbQ8HFAAAAAAAAAAAAAAAAAA..."
                      },
                      "qrCodeUrl": {
                        "type": "string",
                        "format": "uri",
                        "description": "7-day signed GCS URL of the QR code PNG"
                      },
                      "qrCodeExpiresAt": {
                        "type": "number",
                        "description": "Unix timestamp (ms) when qrCodeUrl expires"
                      },
                      "receivingAddress": {
                        "type": "string",
                        "description": "The wallet address where funds should be sent",
                        "example": "0xAbCdEf0123456789AbCdEf0123456789AbCdEf01"
                      },
                      "tokenContract": {
                        "type": "string",
                        "description": "The ERC20 token contract address",
                        "example": "0x765DE816845861e75A25fCA122bb6898B8B1282a"
                      },
                      "decimals": {
                        "type": "number",
                        "description": "Token decimals (default 18)",
                        "example": 18
                      }
                    },
                    "required": [
                      "address",
                      "network",
                      "depositType"
                    ],
                    "description": "Crypto Deposit Information"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "base64QRCode": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Base64 encoded QR code",
                        "example": "base64QRCode"
                      },
                      "qrCodeString": {
                        "type": "string",
                        "minLength": 1,
                        "description": "The Pix copy-and-paste code (BR Code payload) the payer pastes into their bank app. Pass it through unchanged — it carries its own checksum.",
                        "example": "qrCodeString"
                      },
                      "referenceCode": {
                        "type": "string",
                        "minLength": 1,
                        "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order",
                        "example": "REF123456"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "exclusiveMinimum": true,
                        "description": "The monetary value to be deposited into the bank. This amount should be positive and accurately reflect the intended deposit.",
                        "example": 1000
                      },
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "PIX"
                        ]
                      }
                    },
                    "required": [
                      "base64QRCode",
                      "qrCodeString",
                      "referenceCode",
                      "amount",
                      "depositType"
                    ],
                    "description": "Pix Deposit Information"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "CREDIT_CARD"
                        ]
                      }
                    },
                    "required": [
                      "depositType"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "bankName": {
                        "type": "string",
                        "description": "Name of the bank (present when the rail provides it)"
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Name of the account holder (present when the rail provides it)"
                      },
                      "clabe": {
                        "type": "string",
                        "description": "CLABE number"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Bank account number (e.g. from the BANK_TRANSFER payment method)"
                      },
                      "reference": {
                        "type": "string",
                        "description": "Payment reference (e.g. from the BANK_TRANSFER payment method)"
                      },
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "CLABE"
                        ],
                        "description": "Type of the deposit"
                      }
                    },
                    "required": [
                      "clabe",
                      "depositType"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "url": {
                        "type": "string",
                        "description": "URL of the PSE payment"
                      },
                      "amountPrefilled": {
                        "type": "boolean",
                        "description": "Whether the payment page already carries the amount. When false or absent, the payer must enter it."
                      },
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "PSE"
                        ],
                        "description": "Type of the deposit"
                      }
                    },
                    "required": [
                      "url",
                      "depositType"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BALANCE"
                        ]
                      }
                    },
                    "required": [
                      "depositType"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "PENDING"
                        ]
                      },
                      "currency": {
                        "type": "string",
                        "description": "Currency of the deposit"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the order/deposit"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount. It can be 0 while bank transfer details are open-amount or still being provisioned."
                      },
                      "extraDepositMethods": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "methodType": {
                              "type": "string",
                              "enum": [
                                "HOSTED_CHECKOUT"
                              ],
                              "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                            },
                            "url": {
                              "type": "string",
                              "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                              "example": "https://checkout.example.com/pay/abc123"
                            },
                            "callbackUrl": {
                              "type": "string",
                              "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Payment reference for this method (equals the deposit/order reference)"
                            },
                            "amount": {
                              "type": "number",
                              "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                            },
                            "currency": {
                              "type": "string",
                              "description": "Currency of this method"
                            },
                            "expiresAt": {
                              "type": "number",
                              "description": "Unix ms after which `url` is no longer valid, when known"
                            }
                          },
                          "required": [
                            "methodType",
                            "url"
                          ],
                          "description": "An additional, optional way to pay this deposit"
                        },
                        "description": "Additional ways to pay while the bank details are being provisioned (e.g. a hosted card page). Optional — ignore it and wait for the bank details if you only support bank transfer."
                      },
                      "pendingReason": {
                        "type": "string",
                        "enum": [
                          "collection_account_activating",
                          "accountless_per_account_corridor"
                        ],
                        "description": "Why the instructions are still being provisioned, when the reason is known. `collection_account_activating` means the collection account for this payer is being activated and payable details are expected shortly. `accountless_per_account_corridor` means this corridor collects only into a collection account dedicated to the paying account, this request names no account, and none can be created for it — so payable details will NOT arrive by waiting; create the deposit against an account instead. Absence never conveys timing on either surface: here it means only that no reason is classifiable, and an account-level deposit-method instruction never carries the field at all. Treat the values as an open set and ignore any you do not recognise."
                      }
                    },
                    "required": [
                      "depositType",
                      "currency",
                      "referenceCode",
                      "amount"
                    ],
                    "description": "Deposit details are being provisioned; poll the order/deposit or wait for webhook"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "IMPS"
                        ]
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Name of the bank"
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Name of the account holder"
                      },
                      "ifsc": {
                        "type": "string",
                        "description": "ifsc number"
                      },
                      "type": {
                        "type": "string",
                        "description": "Type of the deposit"
                      },
                      "branch": {
                        "type": "string",
                        "description": "Branch of the bank"
                      },
                      "bank": {
                        "type": "string",
                        "description": "Bank of the account"
                      },
                      "otp": {
                        "type": "string",
                        "description": "OTP of the deposit"
                      },
                      "bankNotes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "number",
                              "description": "Type of note: -1 for warning, 1 for info"
                            },
                            "msg": {
                              "type": "string",
                              "description": "Message content"
                            }
                          },
                          "required": [
                            "type",
                            "msg"
                          ]
                        },
                        "description": "Additional bank instructions"
                      }
                    },
                    "required": [
                      "depositType",
                      "accountNumber",
                      "bankName",
                      "accountHolder",
                      "ifsc",
                      "type",
                      "branch",
                      "bank",
                      "otp"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "UPI"
                        ]
                      },
                      "vpa": {
                        "type": "string",
                        "description": "Virtual Payment Address"
                      },
                      "name": {
                        "type": "string",
                        "description": "Name of the account holder"
                      },
                      "otp": {
                        "type": "string",
                        "description": "OTP for the transaction"
                      },
                      "paymentLink": {
                        "type": "string",
                        "description": "Payment link"
                      },
                      "upiNotes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "number",
                              "description": "Type of note: -1 for warning, 1 for info"
                            },
                            "msg": {
                              "type": "string",
                              "description": "Message content"
                            }
                          },
                          "required": [
                            "type",
                            "msg"
                          ]
                        },
                        "description": "Additional UPI instructions"
                      }
                    },
                    "required": [
                      "depositType",
                      "vpa",
                      "name",
                      "otp",
                      "paymentLink"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "AED_BANK_TRANSFER"
                        ]
                      },
                      "iban": {
                        "type": "string",
                        "description": "International Bank Account Number"
                      },
                      "name": {
                        "type": "string",
                        "description": "Name of the account holder"
                      },
                      "bank": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "type": {
                        "type": "string",
                        "description": "Account type"
                      },
                      "address": {
                        "type": "string",
                        "description": "Bank address"
                      },
                      "email": {
                        "type": "string",
                        "description": "Contact email"
                      },
                      "phoneNumber": {
                        "type": "string",
                        "description": "Contact phone number"
                      },
                      "transferCode": {
                        "type": "string",
                        "description": "Transfer code"
                      },
                      "poBox": {
                        "type": "string",
                        "description": "P.O. Box"
                      },
                      "otp": {
                        "type": "string",
                        "description": "OTP for the transaction"
                      },
                      "bankNotes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "number",
                              "description": "Type of note: -1 for warning, 1 for info"
                            },
                            "msg": {
                              "type": "string",
                              "description": "Message content"
                            }
                          },
                          "required": [
                            "type",
                            "msg"
                          ]
                        },
                        "description": "Additional bank instructions"
                      }
                    },
                    "required": [
                      "depositType",
                      "iban",
                      "name",
                      "bank",
                      "type",
                      "address",
                      "email",
                      "phoneNumber",
                      "transferCode",
                      "poBox",
                      "otp"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "SPEI"
                        ]
                      },
                      "clabe": {
                        "type": "string",
                        "description": "CLABE number"
                      },
                      "name": {
                        "type": "string",
                        "description": "Name of the account holder"
                      },
                      "bank": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankNotes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "number",
                              "description": "Type of note: -1 for warning, 1 for info"
                            },
                            "msg": {
                              "type": "string",
                              "description": "Message content"
                            }
                          },
                          "required": [
                            "type",
                            "msg"
                          ]
                        },
                        "description": "Additional bank instructions"
                      }
                    },
                    "required": [
                      "depositType",
                      "clabe",
                      "name",
                      "bank"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "TRY_BANK_TRANSFER"
                        ]
                      },
                      "iban": {
                        "type": "string",
                        "description": "International Bank Account Number"
                      },
                      "name": {
                        "type": "string",
                        "description": "Name of the account holder"
                      },
                      "bank": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "otp": {
                        "type": "string",
                        "description": "OTP for the transaction"
                      },
                      "bankNotes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "number",
                              "description": "Type of note: -1 for warning, 1 for info"
                            },
                            "msg": {
                              "type": "string",
                              "description": "Message content"
                            }
                          },
                          "required": [
                            "type",
                            "msg"
                          ]
                        },
                        "description": "Additional bank instructions"
                      }
                    },
                    "required": [
                      "depositType",
                      "iban",
                      "name",
                      "bank",
                      "otp"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "IDR_BANK_TRANSFER"
                        ]
                      },
                      "virtualAccount": {
                        "type": "string",
                        "description": "Virtual account number"
                      },
                      "name": {
                        "type": "string",
                        "description": "Name of the account holder"
                      },
                      "bank": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankNotes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "number",
                              "description": "Type of note: -1 for warning, 1 for info"
                            },
                            "msg": {
                              "type": "string",
                              "description": "Message content"
                            }
                          },
                          "required": [
                            "type",
                            "msg"
                          ]
                        },
                        "description": "Additional bank instructions"
                      }
                    },
                    "required": [
                      "depositType",
                      "virtualAccount",
                      "name",
                      "bank"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "THAI_QR"
                        ]
                      },
                      "qrCode": {
                        "type": "string",
                        "description": "QR code"
                      },
                      "otp": {
                        "type": "string",
                        "description": "OTP for the transaction"
                      },
                      "bankNotes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "number",
                              "description": "Type of note: -1 for warning, 1 for info"
                            },
                            "msg": {
                              "type": "string",
                              "description": "Message content"
                            }
                          },
                          "required": [
                            "type",
                            "msg"
                          ]
                        },
                        "description": "Additional bank instructions"
                      }
                    },
                    "required": [
                      "depositType",
                      "qrCode",
                      "otp"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "VIET_QR"
                        ]
                      },
                      "qrCode": {
                        "type": "string",
                        "description": "QR code"
                      },
                      "otp": {
                        "type": "string",
                        "description": "OTP for the transaction"
                      },
                      "bankNotes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "number",
                              "description": "Type of note: -1 for warning, 1 for info"
                            },
                            "msg": {
                              "type": "string",
                              "description": "Message content"
                            }
                          },
                          "required": [
                            "type",
                            "msg"
                          ]
                        },
                        "description": "Additional bank instructions"
                      }
                    },
                    "required": [
                      "depositType",
                      "qrCode",
                      "otp"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "GCASH"
                        ]
                      },
                      "qrCode": {
                        "type": "string",
                        "description": "QR code"
                      },
                      "otp": {
                        "type": "string",
                        "description": "OTP for the transaction"
                      },
                      "bankNotes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "number",
                              "description": "Type of note: -1 for warning, 1 for info"
                            },
                            "msg": {
                              "type": "string",
                              "description": "Message content"
                            }
                          },
                          "required": [
                            "type",
                            "msg"
                          ]
                        },
                        "description": "Additional bank instructions"
                      }
                    },
                    "required": [
                      "depositType",
                      "qrCode",
                      "otp"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "ARGENTINA_BANK_TRANSFER"
                        ]
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Account number"
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "accountNumber"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "ACH_US"
                        ]
                      },
                      "routingNumber": {
                        "type": "string",
                        "description": "US bank ABA routing number"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "US bank account number"
                      },
                      "beneficiaryName": {
                        "type": "string",
                        "description": "Beneficiary name on the account"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Name of the bank"
                      },
                      "bankAddress": {
                        "type": "string",
                        "description": "Address of the bank"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names (e.g. ACH, Wire)"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount in USD"
                      },
                      "referenceCode": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Reference code to include in the wire/ACH transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "routingNumber",
                      "accountNumber",
                      "beneficiaryName",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "ACH_PULL"
                        ]
                      }
                    },
                    "required": [
                      "depositType"
                    ],
                    "description": "Funds are pulled from the holder's own linked US bank account; no transfer instructions apply"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "LOCALBANK"
                        ],
                        "description": "Deprecated generic local-bank payin type. Superseded by the corridor-specific deposit types (e.g. SEPA, ACH_US, GBP_BANK_TRANSFER, CLABE/SPEI, PIX, ARGENTINA_BANK_TRANSFER, BANK_DEPOSIT_<CC>). Still returned on some corridors and on historical records, so integrators must continue to handle it. Discover the applicable per-currency method via GET /v1/currencies/{currency}/payin-schema.",
                        "deprecated": true
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "GBP_BANK_TRANSFER"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "UK bank account number"
                      },
                      "sortCode": {
                        "type": "string",
                        "description": "UK sort code"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Name of the bank"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names (e.g. Faster Payments, CHAPS, BACS)"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount in GBP"
                      },
                      "referenceCode": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Reference code to include in the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "accountHolder",
                      "accountNumber",
                      "sortCode",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_COL"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_CL"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_BO"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_BR"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_NG"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_KE"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_GH"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_ZA"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_TZ"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_UG"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_RW"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_MW"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_ZM"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_BW"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_CD"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_XOF"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_XAF"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_NG"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_KE"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_GH"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_ZA"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_TZ"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_UG"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_RW"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_MW"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_ZM"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_BW"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_CD"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_XOF"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_XAF"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  }
                ],
                "description": "Details of the deposit",
                "examples": [
                  {
                    "accountHolder": "John Doe",
                    "iban": "DE8937XXXXXXXXXXXX3000",
                    "bic": "COBADEFFXXX",
                    "bankName": "Commerzbank",
                    "bankAddress": "Mainzer Landstrasse 151-153",
                    "bankCity": "Frankfurt",
                    "bankZipcode": "60327",
                    "bankCountry": "DE",
                    "amount": 1000,
                    "referenceCode": "ABC123",
                    "depositType": "SEPA"
                  }
                ]
              },
              "depositInfoPending": {
                "type": "boolean",
                "description": "True while the payment instructions are still being prepared. Poll this deposit until it is false (or absent) before showing the instructions to the payer."
              },
              "complianceHold": {
                "type": "object",
                "properties": {
                  "reason": {
                    "type": "string",
                    "enum": [
                      "screening",
                      "fiat_monitoring"
                    ],
                    "description": "Compliance hold reason"
                  }
                },
                "required": [
                  "reason"
                ],
                "description": "Present while the inbound transfer funding this deposit is held in provider compliance review. The deposit stays Reviewing (amount 0, never credited) until the hold clears (promote to Received) or the transfer is rejected/returned (terminalize)."
              }
            },
            "required": [
              "depositId",
              "createdAt",
              "expectedAmount",
              "amount",
              "currency",
              "fee",
              "expectedFee",
              "feeCurrency",
              "status",
              "depositInfo"
            ],
            "description": "Details of the deposit associated with the order"
          },
          "trade": {
            "type": "object",
            "properties": {
              "tradeId": {
                "type": "string",
                "description": "ID of the trade",
                "example": "123e4567-e89b-12d3-a456-426614174000"
              },
              "createdAt": {
                "type": "number",
                "description": "Creation time of the trade",
                "example": 1723027132
              },
              "pair": {
                "type": "string",
                "description": "Asset pair to trade",
                "example": "BTC/EUR"
              },
              "tradeType": {
                "type": "string",
                "enum": [
                  "buy",
                  "sell"
                ],
                "description": "Type of trade"
              },
              "volume": {
                "type": "number",
                "minimum": 0,
                "exclusiveMinimum": true,
                "description": "Order quantity in lots",
                "example": 0.5
              },
              "price": {
                "type": "number",
                "minimum": 0,
                "exclusiveMinimum": true,
                "description": "Price at which to place the order based on the pair",
                "example": 30000
              },
              "conversionRate": {
                "type": "number",
                "minimum": 0,
                "exclusiveMinimum": true,
                "description": "Conversion rate at which to place the order based on the pair",
                "example": 30000
              },
              "fee": {
                "type": "number",
                "minimum": 0,
                "description": "Fee for the trade",
                "example": 0.1
              },
              "feeCurrency": {
                "type": "string",
                "description": "Currency of the fee",
                "example": "EUR"
              },
              "userEmail": {
                "type": "string",
                "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                "description": "Email of the user making the trade",
                "example": "user@example.com"
              }
            },
            "required": [
              "tradeId",
              "createdAt",
              "pair",
              "tradeType",
              "volume",
              "fee",
              "feeCurrency",
              "userEmail"
            ],
            "description": "Details of the trade associated with the order"
          },
          "withdraw": {
            "type": "object",
            "properties": {
              "withdrawalId": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 12,
                    "maxLength": 12,
                    "pattern": "^[A-Z0-9]{12}$",
                    "examples": [
                      "01CLFXMT67II",
                      "2R7E5Y5KFXP8",
                      "4FWWRE3Y2URM"
                    ]
                  },
                  {
                    "type": "string",
                    "format": "uuid"
                  }
                ],
                "description": "ID of the withdrawal"
              },
              "userData": {
                "oneOf": [
                  {
                    "type": "object",
                    "properties": {
                      "userType": {
                        "type": "string",
                        "enum": [
                          "individual"
                        ]
                      },
                      "firstName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 50,
                        "description": "First name of the user making the deposit (or representative for business)",
                        "examples": [
                          "John",
                          "Alice",
                          "Bob"
                        ]
                      },
                      "lastName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "Last name of the user making the deposit (or representative for business)",
                        "examples": [
                          "Doe",
                          "Smith",
                          "Johnson"
                        ]
                      },
                      "userEmail": {
                        "type": "string",
                        "maxLength": 254,
                        "format": "email",
                        "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                        "description": "Email of the user making the deposit",
                        "examples": [
                          "user@virtuabroker.com",
                          "john.doe@example.com",
                          "alice@example.com"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "maxLength": 150,
                        "description": "Address of the user making the deposit",
                        "examples": [
                          "123 Main St, Anytown, ES",
                          "456 Elm St, Anytown, ES",
                          "789 Oak St, Anytown, ES"
                        ]
                      },
                      "taxDocumentType": {
                        "type": "string",
                        "maxLength": 50,
                        "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                        "examples": [
                          "CC",
                          "NIT",
                          "CE",
                          "NIF",
                          "Other"
                        ]
                      },
                      "taxId": {
                        "type": "string",
                        "maxLength": 30,
                        "description": "Tax ID of the user making the deposit",
                        "examples": [
                          "123-45-6789",
                          "987-65-4321",
                          "111-22-3333"
                        ]
                      },
                      "country": {
                        "type": "string",
                        "enum": [
                          "US",
                          "CA",
                          "GB",
                          "DE",
                          "FR",
                          "AU",
                          "JP",
                          "KR",
                          "SE",
                          "NO",
                          "DK",
                          "FI",
                          "NL",
                          "BE",
                          "CH",
                          "AT",
                          "NZ",
                          "SG",
                          "IE",
                          "LU",
                          "PT",
                          "ES",
                          "IT",
                          "GR",
                          "CZ",
                          "PL",
                          "HU",
                          "SK",
                          "SI",
                          "EE",
                          "LT",
                          "LV",
                          "IS",
                          "MT",
                          "CY",
                          "HR",
                          "RO",
                          "BG",
                          "BR",
                          "AR",
                          "CL",
                          "MX",
                          "CO",
                          "PE",
                          "PA",
                          "UY",
                          "BO",
                          "ZA",
                          "NG",
                          "KE",
                          "GH",
                          "TZ",
                          "UG",
                          "RW",
                          "MW",
                          "ZM",
                          "BW",
                          "CD",
                          "CI",
                          "CM",
                          "IL",
                          "AE",
                          "QA",
                          "SA",
                          "OM",
                          "KW",
                          "BH",
                          "MY",
                          "PH",
                          "TH",
                          "VN",
                          "ID",
                          "IN",
                          "LK",
                          "NP",
                          "BD",
                          "PK",
                          "EG",
                          "MA",
                          "DZ",
                          "TN",
                          "JO",
                          "LB",
                          "TR",
                          "KH",
                          "MM",
                          "LA",
                          "EN",
                          "BT",
                          "VE",
                          "TW",
                          "HK",
                          "CN"
                        ],
                        "description": "Country code of the user making the deposit",
                        "examples": [
                          "ES",
                          "US",
                          "GB"
                        ]
                      },
                      "state": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "State of the user making the deposit",
                        "examples": [
                          "Madrid",
                          "New York",
                          "London"
                        ]
                      },
                      "postalCode": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 30,
                        "description": "Postal code of the user making the deposit",
                        "examples": [
                          "12345",
                          "67890",
                          "abcde"
                        ]
                      },
                      "city": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "City of the user making the deposit",
                        "examples": [
                          "Madrid",
                          "New York",
                          "London"
                        ]
                      },
                      "dob": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 30,
                        "description": "Date of birth of the user making the deposit",
                        "examples": [
                          "1990-01-01",
                          "1995-05-15",
                          "1988-12-31"
                        ]
                      },
                      "phoneNumber": {
                        "type": "string",
                        "maxLength": 30,
                        "description": "Phone number of the user making the deposit",
                        "examples": [
                          "+447700900123",
                          "+447700900456",
                          "+447700900789"
                        ]
                      },
                      "kycId": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 300,
                        "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                        "examples": [
                          "kyc-12345",
                          "kyc-67890",
                          "kyc-abcde"
                        ]
                      },
                      "activity": {
                        "type": "string",
                        "description": "Activity of the user making the deposit",
                        "examples": [
                          "worker",
                          "business",
                          "student"
                        ]
                      }
                    },
                    "required": [
                      "userType",
                      "firstName",
                      "userEmail",
                      "country"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "userType": {
                        "type": "string",
                        "enum": [
                          "business"
                        ]
                      },
                      "businessName": {
                        "type": "string",
                        "maxLength": 150,
                        "description": "Business name (required when userType is business)",
                        "examples": [
                          "Acme Corp",
                          "Tech Solutions Inc",
                          "Global Services Ltd"
                        ]
                      },
                      "firstName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 50,
                        "description": "First name of the user making the deposit (or representative for business)",
                        "examples": [
                          "John",
                          "Alice",
                          "Bob"
                        ]
                      },
                      "userEmail": {
                        "type": "string",
                        "maxLength": 254,
                        "format": "email",
                        "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                        "description": "Email of the user making the deposit",
                        "examples": [
                          "user@virtuabroker.com",
                          "john.doe@example.com",
                          "alice@example.com"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "maxLength": 150,
                        "description": "Address of the user making the deposit",
                        "examples": [
                          "123 Main St, Anytown, ES",
                          "456 Elm St, Anytown, ES",
                          "789 Oak St, Anytown, ES"
                        ]
                      },
                      "taxDocumentType": {
                        "type": "string",
                        "maxLength": 50,
                        "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                        "examples": [
                          "CC",
                          "NIT",
                          "CE",
                          "NIF",
                          "Other"
                        ]
                      },
                      "taxId": {
                        "type": "string",
                        "maxLength": 30,
                        "description": "Tax ID of the user making the deposit",
                        "examples": [
                          "123-45-6789",
                          "987-65-4321",
                          "111-22-3333"
                        ]
                      },
                      "country": {
                        "type": "string",
                        "enum": [
                          "US",
                          "CA",
                          "GB",
                          "DE",
                          "FR",
                          "AU",
                          "JP",
                          "KR",
                          "SE",
                          "NO",
                          "DK",
                          "FI",
                          "NL",
                          "BE",
                          "CH",
                          "AT",
                          "NZ",
                          "SG",
                          "IE",
                          "LU",
                          "PT",
                          "ES",
                          "IT",
                          "GR",
                          "CZ",
                          "PL",
                          "HU",
                          "SK",
                          "SI",
                          "EE",
                          "LT",
                          "LV",
                          "IS",
                          "MT",
                          "CY",
                          "HR",
                          "RO",
                          "BG",
                          "BR",
                          "AR",
                          "CL",
                          "MX",
                          "CO",
                          "PE",
                          "PA",
                          "UY",
                          "BO",
                          "ZA",
                          "NG",
                          "KE",
                          "GH",
                          "TZ",
                          "UG",
                          "RW",
                          "MW",
                          "ZM",
                          "BW",
                          "CD",
                          "CI",
                          "CM",
                          "IL",
                          "AE",
                          "QA",
                          "SA",
                          "OM",
                          "KW",
                          "BH",
                          "MY",
                          "PH",
                          "TH",
                          "VN",
                          "ID",
                          "IN",
                          "LK",
                          "NP",
                          "BD",
                          "PK",
                          "EG",
                          "MA",
                          "DZ",
                          "TN",
                          "JO",
                          "LB",
                          "TR",
                          "KH",
                          "MM",
                          "LA",
                          "EN",
                          "BT",
                          "VE",
                          "TW",
                          "HK",
                          "CN"
                        ],
                        "description": "Country code of the user making the deposit",
                        "examples": [
                          "ES",
                          "US",
                          "GB"
                        ]
                      },
                      "state": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "State of the user making the deposit",
                        "examples": [
                          "Madrid",
                          "New York",
                          "London"
                        ]
                      },
                      "postalCode": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 30,
                        "description": "Postal code of the user making the deposit",
                        "examples": [
                          "12345",
                          "67890",
                          "abcde"
                        ]
                      },
                      "city": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "City of the user making the deposit",
                        "examples": [
                          "Madrid",
                          "New York",
                          "London"
                        ]
                      },
                      "dob": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 30,
                        "description": "Date of birth of the user making the deposit",
                        "examples": [
                          "1990-01-01",
                          "1995-05-15",
                          "1988-12-31"
                        ]
                      },
                      "phoneNumber": {
                        "type": "string",
                        "maxLength": 30,
                        "description": "Phone number of the user making the deposit",
                        "examples": [
                          "+447700900123",
                          "+447700900456",
                          "+447700900789"
                        ]
                      },
                      "kycId": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 300,
                        "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                        "examples": [
                          "kyc-12345",
                          "kyc-67890",
                          "kyc-abcde"
                        ]
                      },
                      "activity": {
                        "type": "string",
                        "description": "Activity of the user making the deposit",
                        "examples": [
                          "worker",
                          "business",
                          "student"
                        ]
                      }
                    },
                    "required": [
                      "userType",
                      "businessName",
                      "firstName",
                      "userEmail",
                      "country"
                    ]
                  }
                ],
                "description": "User data for the withdrawal"
              },
              "createdAt": {
                "type": "number",
                "description": "Creation time of the withdrawal",
                "example": 1723027132
              },
              "updatedAt": {
                "type": "number",
                "description": "Last update time of the withdrawal",
                "example": 1723027132
              },
              "userEmail": {
                "type": "string",
                "format": "email",
                "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                "description": "Email of the user making the request",
                "example": "user@example.com"
              },
              "amount": {
                "type": "number",
                "description": "Amount to be withdrawn. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
                "example": 1000
              },
              "currency": {
                "type": "string",
                "description": "Currency of the withdrawal",
                "example": "EUR"
              },
              "fee": {
                "type": "number",
                "description": "Fee for the withdrawal. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
                "example": 10
              },
              "feeCurrency": {
                "type": "string",
                "description": "Currency of the fee",
                "example": "EUR"
              },
              "destinationTransferData": {
                "oneOf": [
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "BALANCE"
                        ]
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "Balance transfer details",
                    "title": "Balance"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "iban": {
                        "type": "string",
                        "description": "IBAN number"
                      },
                      "bic": {
                        "type": "string",
                        "description": "BIC number (optional)"
                      },
                      "country": {
                        "type": "string",
                        "description": "Country code"
                      },
                      "accountType": {
                        "type": "string",
                        "enum": [
                          "PERSONAL",
                          "BUSINESS"
                        ],
                        "default": "PERSONAL",
                        "description": "Account type (optional)"
                      },
                      "city": {
                        "type": "string",
                        "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                      },
                      "postalCode": {
                        "type": "string",
                        "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                      },
                      "address": {
                        "type": "string",
                        "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "SEPA"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "iban",
                      "country",
                      "type"
                    ],
                    "description": "SEPA transfer details",
                    "title": "SEPA"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "UK bank account number"
                      },
                      "sortCode": {
                        "type": "string",
                        "description": "UK sort code"
                      },
                      "country": {
                        "type": "string",
                        "enum": [
                          "GB"
                        ],
                        "default": "GB",
                        "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                      },
                      "accountType": {
                        "type": "string",
                        "enum": [
                          "PERSONAL",
                          "BUSINESS"
                        ],
                        "default": "PERSONAL",
                        "description": "Account type (optional)"
                      },
                      "city": {
                        "type": "string",
                        "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                      },
                      "postalCode": {
                        "type": "string",
                        "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                      },
                      "address": {
                        "type": "string",
                        "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "GBP_BANK_TRANSFER"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "accountNumber",
                      "sortCode",
                      "type"
                    ],
                    "description": "GBP domestic bank transfer details",
                    "title": "BankDepositGB"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "US bank account number"
                      },
                      "routingNumber": {
                        "type": "string",
                        "description": "US ABA routing number"
                      },
                      "country": {
                        "type": "string",
                        "enum": [
                          "US"
                        ],
                        "default": "US",
                        "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                      },
                      "accountType": {
                        "type": "string",
                        "enum": [
                          "PERSONAL",
                          "BUSINESS"
                        ],
                        "default": "PERSONAL",
                        "description": "Account type (optional)"
                      },
                      "bankAccountType": {
                        "type": "string",
                        "enum": [
                          "CHECKING",
                          "SAVINGS"
                        ],
                        "default": "CHECKING",
                        "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                      },
                      "city": {
                        "type": "string",
                        "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                      },
                      "postalCode": {
                        "type": "string",
                        "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                      },
                      "state": {
                        "type": "string",
                        "pattern": "^[A-Z]{2}$",
                        "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                      },
                      "address": {
                        "type": "string",
                        "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "ACH_US"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "accountNumber",
                      "routingNumber",
                      "state",
                      "type"
                    ],
                    "description": "USD ACH transfer details",
                    "title": "AchUS"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "linkedBankAccount"
                        ]
                      },
                      "accountLinkId": {
                        "type": "string",
                        "pattern": "^alnk_[0-9a-f]{24}$",
                        "description": "Identifier of one of the account holder own linked bank accounts",
                        "examples": [
                          "alnk_0123456789abcdef01234567"
                        ]
                      }
                    },
                    "required": [
                      "type",
                      "accountLinkId"
                    ],
                    "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                    "title": "LinkedBankAccount",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "ETH"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "ETH destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "ETH"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "MATIC"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "MATIC destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "MATIC"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "SOL"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "SOL destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "SOL"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "TRON"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "TRON destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "TRON"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "CELO"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "CELO destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "CELO"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "BTC"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "BTC destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "BTC"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "SOLANA"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "SOLANA destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "SOLANA"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "XRP"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "XRP destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "XRP"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "CARDANO"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "CARDANO destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "CARDANO"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "BSC"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "BSC destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "BSC"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "ARBITRUM"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "ARBITRUM destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "ARBITRUM"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "OPTIMISM"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "OPTIMISM destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "OPTIMISM"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "AVALANCHE"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "AVALANCHE destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "AVALANCHE"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "BASE"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "BASE destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "BASE"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_COL"
                        ]
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Recipient ID document number. Required when creating or updating a destination."
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                    "title": "Bank Deposit COL"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "brebKey": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Bre-B key (llave) that identifies the recipient account"
                      },
                      "email": {
                        "type": "string",
                        "description": "Recipient email (optional contact for the Bre-B rail)"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Recipient phone number (optional contact for the Bre-B rail)"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BRE_B_COP"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "brebKey",
                      "type"
                    ],
                    "description": "Colombian Bre-B payout details",
                    "title": "Bre-B COP"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "pattern": "^\\d{4}$",
                        "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                      },
                      "destinationBankAccountNumber": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Recipient bank account number"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Recipient ID document number"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "ACH_COP"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankCode",
                      "destinationBankAccountNumber",
                      "destinationBankAccountType",
                      "destinationDocumentType",
                      "destinationTaxId",
                      "type"
                    ],
                    "description": "Colombian ACH payout details",
                    "title": "ACH COP"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (unused for TWD — no network discovery)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "minLength": 2,
                        "description": "Bank name (required — TWD payouts run over SWIFT)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_TW"
                        ]
                      },
                      "destinationBankBranch": {
                        "type": "string",
                        "minLength": 2,
                        "description": "Bank branch (required — TWD payouts run over SWIFT)"
                      },
                      "bic": {
                        "type": "string",
                        "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                        "description": "SWIFT BIC code (required for TWD payouts)"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "description": "Type of bank account (legacy, optional)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Tax ID of the recipient (legacy, optional)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "description": "Document type of the recipient (legacy, optional)"
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "destinationBankName",
                      "type",
                      "destinationBankBranch",
                      "bic"
                    ],
                    "description": "Taiwan bank deposit details (SWIFT payout)",
                    "title": "Bank Deposit TW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "description": "Bank code"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationBankBranch": {
                        "type": "string",
                        "description": "Bank branch"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Tax ID of the recipient"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_BR"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankCode",
                      "destinationBankAccount",
                      "destinationBankBranch",
                      "destinationTaxId",
                      "type"
                    ],
                    "description": "Brazilian bank deposit details",
                    "title": "Bank Deposit BR"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPixCode": {
                        "type": "string",
                        "description": "PIX code"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Tax ID of the recipient"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "PIX_BR"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPixCode",
                      "destinationTaxId",
                      "type"
                    ],
                    "description": "Brazilian PIX details",
                    "title": "PIX BR"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccountNumber": {
                        "type": "string",
                        "description": "Bank account number"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Name of the bank"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                        "description": "Tax ID of the recipient"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "description": "Type of bank account"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_VEN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccountNumber",
                      "destinationBankName",
                      "destinationTaxId",
                      "destinationBankAccountType",
                      "type"
                    ],
                    "description": "Venezuelan bank deposit details",
                    "title": "Bank Deposit VEN"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "description": "Bank code"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                        "description": "Tax ID of the recipient"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "description": "Type of bank account"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "PHONE_DEPOSIT_VEN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankCode",
                      "destinationPhoneNumber",
                      "destinationTaxId",
                      "destinationBankAccountType",
                      "type"
                    ],
                    "description": "Venezuelan phone deposit details",
                    "title": "Phone Deposit VEN"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationIFSC": {
                        "type": "string",
                        "description": "IFSC code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_IN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Bank Deposit IN",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationIFSC": {
                        "type": "string",
                        "description": "IFSC code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "IMPS"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "IMPS",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationIFSC": {
                        "type": "string",
                        "description": "IFSC code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "THAI_QR"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Thai QR",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationIFSC": {
                        "type": "string",
                        "description": "IFSC code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "VIET_QR"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Viet QR",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationIFSC": {
                        "type": "string",
                        "description": "IFSC code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "GCASH"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "GCash",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Tax ID"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_PAYMENT_IN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "destinationTaxId",
                      "type"
                    ],
                    "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Mobile Payment IN",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "description": "Bank code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_VN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "destinationBankCode",
                      "type"
                    ],
                    "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Bank Deposit VN",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "bic": {
                        "type": "string",
                        "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "destinationAddress": {
                        "type": "string",
                        "description": "Address line 1 of the recipient"
                      },
                      "destinationCity": {
                        "type": "string",
                        "description": "Recipient city (defaults to Hong Kong)"
                      },
                      "accountHolderName": {
                        "type": "string",
                        "description": "Bank account holder name if different from payee"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_HK"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "bic",
                      "destinationBankName",
                      "destinationAddress",
                      "type"
                    ],
                    "description": "Hong Kong bank deposit details (HKD bank corridor)",
                    "title": "Bank Deposit HK"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "pattern": "^\\d+$",
                        "description": "CNAPS / bank institution code (numeric, variable length)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "destinationAddress": {
                        "type": "string",
                        "description": "Address line 1 of the recipient"
                      },
                      "destinationCity": {
                        "type": "string",
                        "description": "Recipient city"
                      },
                      "destinationState": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                      },
                      "destinationPostcode": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                      },
                      "destinationPhone": {
                        "type": "string",
                        "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                      },
                      "accountHolderName": {
                        "type": "string",
                        "description": "Bank account holder name if different from payee"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_CN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "destinationBankCode",
                      "destinationBankName",
                      "destinationAddress",
                      "destinationCity",
                      "destinationState",
                      "destinationPostcode",
                      "type"
                    ],
                    "description": "China mainland bank deposit details (CNY bank corridor)",
                    "title": "Bank Deposit CN"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_AR"
                        ]
                      },
                      "destinationCBU": {
                        "type": "string",
                        "description": "CBU — 22-digit bank account key (legacy, optional)"
                      },
                      "destinationCVU": {
                        "type": "string",
                        "description": "CVU — 22-digit virtual account key (legacy, optional)"
                      },
                      "destinationAlias": {
                        "type": "string",
                        "description": "Account alias (legacy, optional)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "description": "Document type of the recipient (legacy, optional)"
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Argentinian bank deposit details",
                    "title": "Bank Deposit AR"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Recipient bank name (required for Chilean bank payouts)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_CL"
                        ]
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "minLength": 1,
                        "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "description": "Document type of the recipient (legacy, optional)"
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "destinationBankName",
                      "type",
                      "destinationBankAccountType",
                      "destinationTaxId"
                    ],
                    "description": "Chilean bank deposit details",
                    "title": "Bank Deposit CL"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 30,
                        "description": "Recipient name (required, 2–30 characters)"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 11,
                        "description": "Bank account number (max 11 digits for Bolivian accounts)"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (unused for BOB — no network discovery)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "maxLength": 20,
                        "description": "Bank name (optional, max 20 characters)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_BO"
                        ]
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 15,
                        "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type",
                      "destinationTaxId"
                    ],
                    "description": "Bolivian bank deposit details",
                    "title": "Bank Deposit BO"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_PE"
                        ]
                      },
                      "destinationCCI": {
                        "type": "string",
                        "description": "CCI — 20-digit interbank account code (legacy, optional)"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "description": "Account type (corriente/ahorro) (legacy, optional)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "description": "Document type of the recipient (legacy, optional)"
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "destinationNetworkId",
                      "type"
                    ],
                    "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Bank Deposit PE",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "pattern": "^\\d{3}$",
                        "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                      },
                      "destinationBankAccountNumber": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 20,
                        "description": "Recipient bank account number (max 20)"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "enum": [
                          "CORRIENTE",
                          "AHORROS",
                          "PHONE"
                        ],
                        "description": "Bank account type"
                      },
                      "destinationCCI": {
                        "type": "string",
                        "pattern": "^\\d{1,20}$",
                        "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "enum": [
                          "CC",
                          "CE",
                          "RUC",
                          "PAS",
                          "PAR",
                          "LMI",
                          "OTHER"
                        ],
                        "description": "Recipient identification type"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 50,
                        "description": "Recipient identification number (max 50)"
                      },
                      "email": {
                        "type": "string",
                        "pattern": "^.+@.+\\..+$",
                        "description": "Recipient email (required for PEN payouts)"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "pattern": "^\\d{1,9}$",
                        "description": "Recipient phone number (required, max 9 digits)"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_PEN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankCode",
                      "destinationBankAccountNumber",
                      "destinationBankAccountType",
                      "destinationCCI",
                      "destinationDocumentType",
                      "destinationTaxId",
                      "email",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Peruvian bank deposit details (bank-code payout corridor).",
                    "title": "Bank Deposit PEN"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_NG"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Nigeria bank deposit details",
                    "title": "Bank Deposit NG"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_KE"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Kenya bank deposit details",
                    "title": "Bank Deposit KE"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_GH"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Bank Deposit GH",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_ZA"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "South Africa bank deposit details",
                    "title": "Bank Deposit ZA"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_TZ"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Tanzania bank deposit details",
                    "title": "Bank Deposit TZ"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_UG"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Uganda bank deposit details",
                    "title": "Bank Deposit UG"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_RW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Rwanda bank deposit details",
                    "title": "Bank Deposit RW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_MW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Malawi bank deposit details",
                    "title": "Bank Deposit MW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_ZM"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Zambia bank deposit details",
                    "title": "Bank Deposit ZM"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_BW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Botswana bank deposit details",
                    "title": "Bank Deposit BW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_CD"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Bank Deposit CD",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_XOF"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "West African CFA bank deposit details",
                    "title": "Bank Deposit XOF"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_XAF"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Central African CFA bank deposit details",
                    "title": "Bank Deposit XAF"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_NG"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Nigeria mobile money details",
                    "title": "Mobile Money NG"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_KE"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Kenya mobile money details",
                    "title": "Mobile Money KE"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_GH"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Mobile Money GH",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_ZA"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "South Africa mobile money details",
                    "title": "Mobile Money ZA"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_TZ"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Tanzania mobile money details",
                    "title": "Mobile Money TZ"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_UG"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Uganda mobile money details",
                    "title": "Mobile Money UG"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_RW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Rwanda mobile money details",
                    "title": "Mobile Money RW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_MW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Malawi mobile money details",
                    "title": "Mobile Money MW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_ZM"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Zambia mobile money details",
                    "title": "Mobile Money ZM"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_BW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Botswana mobile money details",
                    "title": "Mobile Money BW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_CD"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Mobile Money CD",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_XOF"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "West African CFA mobile money details",
                    "title": "Mobile Money XOF"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_XAF"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Central African CFA mobile money details",
                    "title": "Mobile Money XAF"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "description": "Bank code"
                      },
                      "destinationBankAccountNumber": {
                        "type": "string",
                        "description": "Bank account number (18-digit CLABE)"
                      },
                      "numericReference": {
                        "type": "string",
                        "description": "Numeric reference"
                      },
                      "notesReference": {
                        "type": "string",
                        "description": "Notes reference"
                      },
                      "destinationClabe": {
                        "type": "string",
                        "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_MX"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccountNumber",
                      "type"
                    ],
                    "description": "Mexican bank deposit details",
                    "title": "Bank Deposit MX"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPseNumber": {
                        "type": "string",
                        "description": "PSE number"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "PSE"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPseNumber",
                      "type"
                    ],
                    "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "PSE",
                    "deprecated": true
                  }
                ],
                "description": "The details required for the end user destination transfer method."
              },
              "status": {
                "anyOf": [
                  {
                    "type": "string",
                    "enum": [
                      "Pending",
                      "Processing",
                      "Success",
                      "Failed",
                      "Canceled",
                      "Reviewing"
                    ],
                    "description": "Common status values that are shared across all operation types",
                    "examples": [
                      "Pending",
                      "Processing",
                      "Success",
                      "Failed",
                      "Canceled",
                      "Reviewing"
                    ]
                  },
                  {
                    "type": "string",
                    "enum": [
                      "PendingCancel",
                      "PendingWithdrawal",
                      "PendingVerification",
                      "Pending2FA",
                      "Compliance",
                      "Accepted",
                      "Approved",
                      "Rejected",
                      "Review"
                    ]
                  }
                ],
                "description": "Status of the withdrawal",
                "examples": [
                  "Pending",
                  "Pending2FA",
                  "Compliance",
                  "Accepted",
                  "Approved",
                  "Success",
                  "Failed",
                  "Review",
                  "Rejected"
                ]
              },
              "withdrawalInfo": {
                "oneOf": [
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "BALANCE"
                        ]
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "Balance transfer details",
                    "title": "Balance"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "iban": {
                        "type": "string",
                        "description": "IBAN number"
                      },
                      "bic": {
                        "type": "string",
                        "description": "BIC number (optional)"
                      },
                      "country": {
                        "type": "string",
                        "description": "Country code"
                      },
                      "accountType": {
                        "type": "string",
                        "enum": [
                          "PERSONAL",
                          "BUSINESS"
                        ],
                        "default": "PERSONAL",
                        "description": "Account type (optional)"
                      },
                      "city": {
                        "type": "string",
                        "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                      },
                      "postalCode": {
                        "type": "string",
                        "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                      },
                      "address": {
                        "type": "string",
                        "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "SEPA"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "iban",
                      "country",
                      "type"
                    ],
                    "description": "SEPA transfer details",
                    "title": "SEPA"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "UK bank account number"
                      },
                      "sortCode": {
                        "type": "string",
                        "description": "UK sort code"
                      },
                      "country": {
                        "type": "string",
                        "enum": [
                          "GB"
                        ],
                        "default": "GB",
                        "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                      },
                      "accountType": {
                        "type": "string",
                        "enum": [
                          "PERSONAL",
                          "BUSINESS"
                        ],
                        "default": "PERSONAL",
                        "description": "Account type (optional)"
                      },
                      "city": {
                        "type": "string",
                        "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                      },
                      "postalCode": {
                        "type": "string",
                        "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                      },
                      "address": {
                        "type": "string",
                        "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "GBP_BANK_TRANSFER"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "accountNumber",
                      "sortCode",
                      "type"
                    ],
                    "description": "GBP domestic bank transfer details",
                    "title": "BankDepositGB"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "US bank account number"
                      },
                      "routingNumber": {
                        "type": "string",
                        "description": "US ABA routing number"
                      },
                      "country": {
                        "type": "string",
                        "enum": [
                          "US"
                        ],
                        "default": "US",
                        "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                      },
                      "accountType": {
                        "type": "string",
                        "enum": [
                          "PERSONAL",
                          "BUSINESS"
                        ],
                        "default": "PERSONAL",
                        "description": "Account type (optional)"
                      },
                      "bankAccountType": {
                        "type": "string",
                        "enum": [
                          "CHECKING",
                          "SAVINGS"
                        ],
                        "default": "CHECKING",
                        "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                      },
                      "city": {
                        "type": "string",
                        "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                      },
                      "postalCode": {
                        "type": "string",
                        "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                      },
                      "state": {
                        "type": "string",
                        "pattern": "^[A-Z]{2}$",
                        "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                      },
                      "address": {
                        "type": "string",
                        "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "ACH_US"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "accountNumber",
                      "routingNumber",
                      "state",
                      "type"
                    ],
                    "description": "USD ACH transfer details",
                    "title": "AchUS"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "linkedBankAccount"
                        ]
                      },
                      "accountLinkId": {
                        "type": "string",
                        "pattern": "^alnk_[0-9a-f]{24}$",
                        "description": "Identifier of one of the account holder own linked bank accounts",
                        "examples": [
                          "alnk_0123456789abcdef01234567"
                        ]
                      }
                    },
                    "required": [
                      "type",
                      "accountLinkId"
                    ],
                    "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                    "title": "LinkedBankAccount",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "ETH"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "ETH destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "ETH"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "MATIC"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "MATIC destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "MATIC"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "SOL"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "SOL destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "SOL"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "TRON"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "TRON destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "TRON"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "CELO"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "CELO destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "CELO"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "BTC"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "BTC destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "BTC"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "SOLANA"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "SOLANA destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "SOLANA"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "XRP"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "XRP destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "XRP"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "CARDANO"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "CARDANO destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "CARDANO"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "BSC"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "BSC destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "BSC"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "ARBITRUM"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "ARBITRUM destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "ARBITRUM"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "OPTIMISM"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "OPTIMISM destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "OPTIMISM"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "AVALANCHE"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "AVALANCHE destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "AVALANCHE"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "BASE"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "BASE destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "BASE"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_COL"
                        ]
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Recipient ID document number. Required when creating or updating a destination."
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                    "title": "Bank Deposit COL"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "brebKey": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Bre-B key (llave) that identifies the recipient account"
                      },
                      "email": {
                        "type": "string",
                        "description": "Recipient email (optional contact for the Bre-B rail)"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Recipient phone number (optional contact for the Bre-B rail)"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BRE_B_COP"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "brebKey",
                      "type"
                    ],
                    "description": "Colombian Bre-B payout details",
                    "title": "Bre-B COP"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "pattern": "^\\d{4}$",
                        "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                      },
                      "destinationBankAccountNumber": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Recipient bank account number"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Recipient ID document number"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "ACH_COP"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankCode",
                      "destinationBankAccountNumber",
                      "destinationBankAccountType",
                      "destinationDocumentType",
                      "destinationTaxId",
                      "type"
                    ],
                    "description": "Colombian ACH payout details",
                    "title": "ACH COP"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (unused for TWD — no network discovery)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "minLength": 2,
                        "description": "Bank name (required — TWD payouts run over SWIFT)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_TW"
                        ]
                      },
                      "destinationBankBranch": {
                        "type": "string",
                        "minLength": 2,
                        "description": "Bank branch (required — TWD payouts run over SWIFT)"
                      },
                      "bic": {
                        "type": "string",
                        "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                        "description": "SWIFT BIC code (required for TWD payouts)"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "description": "Type of bank account (legacy, optional)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Tax ID of the recipient (legacy, optional)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "description": "Document type of the recipient (legacy, optional)"
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "destinationBankName",
                      "type",
                      "destinationBankBranch",
                      "bic"
                    ],
                    "description": "Taiwan bank deposit details (SWIFT payout)",
                    "title": "Bank Deposit TW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "description": "Bank code"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationBankBranch": {
                        "type": "string",
                        "description": "Bank branch"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Tax ID of the recipient"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_BR"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankCode",
                      "destinationBankAccount",
                      "destinationBankBranch",
                      "destinationTaxId",
                      "type"
                    ],
                    "description": "Brazilian bank deposit details",
                    "title": "Bank Deposit BR"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPixCode": {
                        "type": "string",
                        "description": "PIX code"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Tax ID of the recipient"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "PIX_BR"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPixCode",
                      "destinationTaxId",
                      "type"
                    ],
                    "description": "Brazilian PIX details",
                    "title": "PIX BR"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccountNumber": {
                        "type": "string",
                        "description": "Bank account number"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Name of the bank"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                        "description": "Tax ID of the recipient"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "description": "Type of bank account"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_VEN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccountNumber",
                      "destinationBankName",
                      "destinationTaxId",
                      "destinationBankAccountType",
                      "type"
                    ],
                    "description": "Venezuelan bank deposit details",
                    "title": "Bank Deposit VEN"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "description": "Bank code"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                        "description": "Tax ID of the recipient"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "description": "Type of bank account"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "PHONE_DEPOSIT_VEN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankCode",
                      "destinationPhoneNumber",
                      "destinationTaxId",
                      "destinationBankAccountType",
                      "type"
                    ],
                    "description": "Venezuelan phone deposit details",
                    "title": "Phone Deposit VEN"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationIFSC": {
                        "type": "string",
                        "description": "IFSC code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_IN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Bank Deposit IN",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationIFSC": {
                        "type": "string",
                        "description": "IFSC code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "IMPS"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "IMPS",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationIFSC": {
                        "type": "string",
                        "description": "IFSC code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "THAI_QR"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Thai QR",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationIFSC": {
                        "type": "string",
                        "description": "IFSC code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "VIET_QR"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Viet QR",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationIFSC": {
                        "type": "string",
                        "description": "IFSC code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "GCASH"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "GCash",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Tax ID"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_PAYMENT_IN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "destinationTaxId",
                      "type"
                    ],
                    "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Mobile Payment IN",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "description": "Bank code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_VN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "destinationBankCode",
                      "type"
                    ],
                    "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Bank Deposit VN",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "bic": {
                        "type": "string",
                        "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "destinationAddress": {
                        "type": "string",
                        "description": "Address line 1 of the recipient"
                      },
                      "destinationCity": {
                        "type": "string",
                        "description": "Recipient city (defaults to Hong Kong)"
                      },
                      "accountHolderName": {
                        "type": "string",
                        "description": "Bank account holder name if different from payee"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_HK"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "bic",
                      "destinationBankName",
                      "destinationAddress",
                      "type"
                    ],
                    "description": "Hong Kong bank deposit details (HKD bank corridor)",
                    "title": "Bank Deposit HK"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "pattern": "^\\d+$",
                        "description": "CNAPS / bank institution code (numeric, variable length)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "destinationAddress": {
                        "type": "string",
                        "description": "Address line 1 of the recipient"
                      },
                      "destinationCity": {
                        "type": "string",
                        "description": "Recipient city"
                      },
                      "destinationState": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                      },
                      "destinationPostcode": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                      },
                      "destinationPhone": {
                        "type": "string",
                        "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                      },
                      "accountHolderName": {
                        "type": "string",
                        "description": "Bank account holder name if different from payee"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_CN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "destinationBankCode",
                      "destinationBankName",
                      "destinationAddress",
                      "destinationCity",
                      "destinationState",
                      "destinationPostcode",
                      "type"
                    ],
                    "description": "China mainland bank deposit details (CNY bank corridor)",
                    "title": "Bank Deposit CN"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_AR"
                        ]
                      },
                      "destinationCBU": {
                        "type": "string",
                        "description": "CBU — 22-digit bank account key (legacy, optional)"
                      },
                      "destinationCVU": {
                        "type": "string",
                        "description": "CVU — 22-digit virtual account key (legacy, optional)"
                      },
                      "destinationAlias": {
                        "type": "string",
                        "description": "Account alias (legacy, optional)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "description": "Document type of the recipient (legacy, optional)"
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Argentinian bank deposit details",
                    "title": "Bank Deposit AR"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Recipient bank name (required for Chilean bank payouts)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_CL"
                        ]
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "minLength": 1,
                        "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "description": "Document type of the recipient (legacy, optional)"
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "destinationBankName",
                      "type",
                      "destinationBankAccountType",
                      "destinationTaxId"
                    ],
                    "description": "Chilean bank deposit details",
                    "title": "Bank Deposit CL"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 30,
                        "description": "Recipient name (required, 2–30 characters)"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 11,
                        "description": "Bank account number (max 11 digits for Bolivian accounts)"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (unused for BOB — no network discovery)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "maxLength": 20,
                        "description": "Bank name (optional, max 20 characters)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_BO"
                        ]
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 15,
                        "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type",
                      "destinationTaxId"
                    ],
                    "description": "Bolivian bank deposit details",
                    "title": "Bank Deposit BO"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_PE"
                        ]
                      },
                      "destinationCCI": {
                        "type": "string",
                        "description": "CCI — 20-digit interbank account code (legacy, optional)"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "description": "Account type (corriente/ahorro) (legacy, optional)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "description": "Document type of the recipient (legacy, optional)"
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "destinationNetworkId",
                      "type"
                    ],
                    "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Bank Deposit PE",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "pattern": "^\\d{3}$",
                        "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                      },
                      "destinationBankAccountNumber": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 20,
                        "description": "Recipient bank account number (max 20)"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "enum": [
                          "CORRIENTE",
                          "AHORROS",
                          "PHONE"
                        ],
                        "description": "Bank account type"
                      },
                      "destinationCCI": {
                        "type": "string",
                        "pattern": "^\\d{1,20}$",
                        "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "enum": [
                          "CC",
                          "CE",
                          "RUC",
                          "PAS",
                          "PAR",
                          "LMI",
                          "OTHER"
                        ],
                        "description": "Recipient identification type"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 50,
                        "description": "Recipient identification number (max 50)"
                      },
                      "email": {
                        "type": "string",
                        "pattern": "^.+@.+\\..+$",
                        "description": "Recipient email (required for PEN payouts)"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "pattern": "^\\d{1,9}$",
                        "description": "Recipient phone number (required, max 9 digits)"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_PEN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankCode",
                      "destinationBankAccountNumber",
                      "destinationBankAccountType",
                      "destinationCCI",
                      "destinationDocumentType",
                      "destinationTaxId",
                      "email",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Peruvian bank deposit details (bank-code payout corridor).",
                    "title": "Bank Deposit PEN"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_NG"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Nigeria bank deposit details",
                    "title": "Bank Deposit NG"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_KE"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Kenya bank deposit details",
                    "title": "Bank Deposit KE"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_GH"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Bank Deposit GH",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_ZA"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "South Africa bank deposit details",
                    "title": "Bank Deposit ZA"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_TZ"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Tanzania bank deposit details",
                    "title": "Bank Deposit TZ"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_UG"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Uganda bank deposit details",
                    "title": "Bank Deposit UG"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_RW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Rwanda bank deposit details",
                    "title": "Bank Deposit RW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_MW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Malawi bank deposit details",
                    "title": "Bank Deposit MW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_ZM"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Zambia bank deposit details",
                    "title": "Bank Deposit ZM"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_BW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Botswana bank deposit details",
                    "title": "Bank Deposit BW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_CD"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Bank Deposit CD",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_XOF"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "West African CFA bank deposit details",
                    "title": "Bank Deposit XOF"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_XAF"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Central African CFA bank deposit details",
                    "title": "Bank Deposit XAF"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_NG"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Nigeria mobile money details",
                    "title": "Mobile Money NG"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_KE"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Kenya mobile money details",
                    "title": "Mobile Money KE"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_GH"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Mobile Money GH",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_ZA"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "South Africa mobile money details",
                    "title": "Mobile Money ZA"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_TZ"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Tanzania mobile money details",
                    "title": "Mobile Money TZ"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_UG"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Uganda mobile money details",
                    "title": "Mobile Money UG"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_RW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Rwanda mobile money details",
                    "title": "Mobile Money RW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_MW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Malawi mobile money details",
                    "title": "Mobile Money MW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_ZM"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Zambia mobile money details",
                    "title": "Mobile Money ZM"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_BW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Botswana mobile money details",
                    "title": "Mobile Money BW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_CD"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Mobile Money CD",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_XOF"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "West African CFA mobile money details",
                    "title": "Mobile Money XOF"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_XAF"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Central African CFA mobile money details",
                    "title": "Mobile Money XAF"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "description": "Bank code"
                      },
                      "destinationBankAccountNumber": {
                        "type": "string",
                        "description": "Bank account number (18-digit CLABE)"
                      },
                      "numericReference": {
                        "type": "string",
                        "description": "Numeric reference"
                      },
                      "notesReference": {
                        "type": "string",
                        "description": "Notes reference"
                      },
                      "destinationClabe": {
                        "type": "string",
                        "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_MX"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccountNumber",
                      "type"
                    ],
                    "description": "Mexican bank deposit details",
                    "title": "Bank Deposit MX"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPseNumber": {
                        "type": "string",
                        "description": "PSE number"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "PSE"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPseNumber",
                      "type"
                    ],
                    "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "PSE",
                    "deprecated": true
                  }
                ],
                "description": "Detailed withdrawal information",
                "title": "WithdrawalInfo"
              },
              "source": {
                "type": "string",
                "enum": [
                  "ui",
                  "apiApp",
                  "externalApi",
                  "internal"
                ],
                "description": "Source of withdrawal creation",
                "example": "externalApi"
              },
              "requires2FA": {
                "type": "boolean",
                "description": "Whether 2FA is required for this withdrawal",
                "example": false
              },
              "twoFactorToken": {
                "type": "string",
                "description": "2FA token for email approval",
                "example": "abc123"
              },
              "twoFactorApprovedAt": {
                "type": "number",
                "description": "Timestamp when 2FA was approved",
                "example": 1723027132
              },
              "errorCode": {
                "type": "string",
                "description": "Error code when status is Review",
                "example": "INSUFFICIENT_BALANCE"
              },
              "errorDetails": {
                "type": "string",
                "description": "Detailed error information",
                "example": "Insufficient balance for withdrawal"
              },
              "reviewedBy": {
                "type": "string",
                "description": "Admin email who reviewed the withdrawal",
                "example": "admin@example.com"
              },
              "reviewedAt": {
                "type": "number",
                "description": "Timestamp when review happened",
                "example": 1723027132
              }
            },
            "required": [
              "withdrawalId",
              "createdAt",
              "amount",
              "currency",
              "fee",
              "feeCurrency",
              "status"
            ],
            "description": "Details of the withdrawal associated with the order"
          },
          "createdAt": {
            "type": "number",
            "description": "Creation time of the order (timestamp)",
            "examples": [
              1723027132,
              1723027200,
              1723027300
            ]
          },
          "updatedAt": {
            "type": "number",
            "description": "Last update time of the order (timestamp)",
            "examples": [
              1723027132,
              1723027200,
              1723027300
            ]
          },
          "status": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "Pending",
                  "Processing",
                  "Success",
                  "Failed",
                  "Canceled",
                  "Reviewing"
                ],
                "description": "Common status values that are shared across all operation types",
                "examples": [
                  "Pending",
                  "Processing",
                  "Success",
                  "Failed",
                  "Canceled",
                  "Reviewing"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "Received",
                  "Exchanging",
                  "Exchanged",
                  "WithdrawProcessing",
                  "Withdrawn",
                  "OffRampProcessing",
                  "OffRamped",
                  "Deleted",
                  "PendingCancel",
                  "Closed",
                  "WaitingForFundsToExchange",
                  "WaitingForFundsToSend",
                  "WaitingForFundsToOffRamp",
                  "OffRampDocPending",
                  "OnRampDocPending",
                  "WaitingForConfirmations",
                  "PriceChanged",
                  "Refunded",
                  "PreparedToOffRamp",
                  "WithdrawOfframpProcessing",
                  "WaitingForFundsToSendOfframp",
                  "WaitingForPayoutSettlement",
                  "WithdrawPending",
                  "WithdrawPendingOfframp"
                ]
              }
            ],
            "description": "Status of the order. A newly created order is typically `Pending`; a balance-funded order may start further along.",
            "examples": [
              "Pending"
            ]
          },
          "externalReference": {
            "type": "string",
            "description": "External reference of the order, as you supplied it on create."
          },
          "externalRefeference": {
            "type": "string",
            "description": "Deprecated misspelling of `externalReference` — same value. Read `externalReference` instead; this key remains for backward compatibility and will be removed in a future major version.",
            "deprecated": true
          },
          "fee": {
            "type": "number",
            "minimum": 0,
            "description": "Total fee for the order once all the execution is completed",
            "examples": [
              6.37,
              8.5,
              10.25
            ]
          },
          "expectedFee": {
            "type": "number",
            "minimum": 0,
            "exclusiveMinimum": true,
            "description": "Expected fee given the initial deposit amount",
            "examples": [
              6.88,
              9.2,
              11.5
            ]
          },
          "expectedGasFee": {
            "type": "number",
            "description": "Expected gas fee if the withdrawal is with crypto",
            "examples": [
              6.88,
              8.5,
              10.25
            ]
          },
          "feeCurrency": {
            "type": "string",
            "description": "Currency of the fee",
            "examples": [
              "EUR",
              "USD",
              "GBP"
            ]
          }
        },
        "required": [
          "orderId",
          "createdAt",
          "status",
          "fee",
          "expectedFee",
          "feeCurrency"
        ],
        "description": "Response schema for creating an order"
      },
      "GetOrderRequest": {
        "type": "object",
        "properties": {
          "orderId": {
            "type": "string",
            "minLength": 12,
            "maxLength": 12,
            "pattern": "^[A-Z0-9]{12}$",
            "description": "ID of the order",
            "examples": [
              "01CLFXMT67II",
              "2R7E5Y5KFXP8",
              "4FWWRE3Y2URM"
            ]
          }
        },
        "required": [
          "orderId"
        ],
        "description": "Request schema for getting details of a specific order"
      },
      "GetOrderResponse": {
        "type": "object",
        "properties": {
          "orderId": {
            "type": "string",
            "description": "ID of the order",
            "examples": [
              "01CLFXMT67II",
              "2R7E5Y5KFXP8",
              "4FWWRE3Y2URM"
            ]
          },
          "deposit": {
            "type": "object",
            "properties": {
              "depositId": {
                "type": "string",
                "minLength": 1,
                "description": "ID of the deposit. Normally a 12-character internal id; deposits created before mid-2026 may carry a longer legacy id. Treat it as an opaque string."
              },
              "externalReference": {
                "type": "string",
                "minLength": 1,
                "maxLength": 128,
                "description": "Your own reference for this deposit. Stored as-is and returned on create, detail and list, so you can look the deposit up by it after a network timeout instead of retrying blind. Not interpreted by VirtuaBroker and not shown to the payer — for the payer's transfer reference use depositInfo.referenceCode.",
                "examples": [
                  "partner-ref-0001",
                  "inv_2026_00417"
                ]
              },
              "userData": {
                "oneOf": [
                  {
                    "type": "object",
                    "properties": {
                      "userType": {
                        "type": "string",
                        "enum": [
                          "individual"
                        ]
                      },
                      "firstName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 50,
                        "description": "First name of the user making the deposit (or representative for business)",
                        "examples": [
                          "John",
                          "Alice",
                          "Bob"
                        ]
                      },
                      "lastName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "Last name of the user making the deposit (or representative for business)",
                        "examples": [
                          "Doe",
                          "Smith",
                          "Johnson"
                        ]
                      },
                      "userEmail": {
                        "type": "string",
                        "maxLength": 254,
                        "format": "email",
                        "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                        "description": "Email of the user making the deposit",
                        "examples": [
                          "user@virtuabroker.com",
                          "john.doe@example.com",
                          "alice@example.com"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "maxLength": 150,
                        "description": "Address of the user making the deposit",
                        "examples": [
                          "123 Main St, Anytown, ES",
                          "456 Elm St, Anytown, ES",
                          "789 Oak St, Anytown, ES"
                        ]
                      },
                      "taxDocumentType": {
                        "type": "string",
                        "maxLength": 50,
                        "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                        "examples": [
                          "CC",
                          "NIT",
                          "CE",
                          "NIF",
                          "Other"
                        ]
                      },
                      "taxId": {
                        "type": "string",
                        "maxLength": 30,
                        "description": "Tax ID of the user making the deposit",
                        "examples": [
                          "123-45-6789",
                          "987-65-4321",
                          "111-22-3333"
                        ]
                      },
                      "country": {
                        "type": "string",
                        "enum": [
                          "US",
                          "CA",
                          "GB",
                          "DE",
                          "FR",
                          "AU",
                          "JP",
                          "KR",
                          "SE",
                          "NO",
                          "DK",
                          "FI",
                          "NL",
                          "BE",
                          "CH",
                          "AT",
                          "NZ",
                          "SG",
                          "IE",
                          "LU",
                          "PT",
                          "ES",
                          "IT",
                          "GR",
                          "CZ",
                          "PL",
                          "HU",
                          "SK",
                          "SI",
                          "EE",
                          "LT",
                          "LV",
                          "IS",
                          "MT",
                          "CY",
                          "HR",
                          "RO",
                          "BG",
                          "BR",
                          "AR",
                          "CL",
                          "MX",
                          "CO",
                          "PE",
                          "PA",
                          "UY",
                          "BO",
                          "ZA",
                          "NG",
                          "KE",
                          "GH",
                          "TZ",
                          "UG",
                          "RW",
                          "MW",
                          "ZM",
                          "BW",
                          "CD",
                          "CI",
                          "CM",
                          "IL",
                          "AE",
                          "QA",
                          "SA",
                          "OM",
                          "KW",
                          "BH",
                          "MY",
                          "PH",
                          "TH",
                          "VN",
                          "ID",
                          "IN",
                          "LK",
                          "NP",
                          "BD",
                          "PK",
                          "EG",
                          "MA",
                          "DZ",
                          "TN",
                          "JO",
                          "LB",
                          "TR",
                          "KH",
                          "MM",
                          "LA",
                          "EN",
                          "BT",
                          "VE",
                          "TW",
                          "HK",
                          "CN"
                        ],
                        "description": "Country code of the user making the deposit",
                        "examples": [
                          "ES",
                          "US",
                          "GB"
                        ]
                      },
                      "state": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "State of the user making the deposit",
                        "examples": [
                          "Madrid",
                          "New York",
                          "London"
                        ]
                      },
                      "postalCode": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 30,
                        "description": "Postal code of the user making the deposit",
                        "examples": [
                          "12345",
                          "67890",
                          "abcde"
                        ]
                      },
                      "city": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "City of the user making the deposit",
                        "examples": [
                          "Madrid",
                          "New York",
                          "London"
                        ]
                      },
                      "dob": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 30,
                        "description": "Date of birth of the user making the deposit",
                        "examples": [
                          "1990-01-01",
                          "1995-05-15",
                          "1988-12-31"
                        ]
                      },
                      "phoneNumber": {
                        "type": "string",
                        "maxLength": 30,
                        "description": "Phone number of the user making the deposit",
                        "examples": [
                          "+447700900123",
                          "+447700900456",
                          "+447700900789"
                        ]
                      },
                      "kycId": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 300,
                        "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                        "examples": [
                          "kyc-12345",
                          "kyc-67890",
                          "kyc-abcde"
                        ]
                      },
                      "activity": {
                        "type": "string",
                        "description": "Activity of the user making the deposit",
                        "examples": [
                          "worker",
                          "business",
                          "student"
                        ]
                      }
                    },
                    "required": [
                      "userType",
                      "firstName",
                      "userEmail",
                      "country"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "userType": {
                        "type": "string",
                        "enum": [
                          "business"
                        ]
                      },
                      "businessName": {
                        "type": "string",
                        "maxLength": 150,
                        "description": "Business name (required when userType is business)",
                        "examples": [
                          "Acme Corp",
                          "Tech Solutions Inc",
                          "Global Services Ltd"
                        ]
                      },
                      "firstName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 50,
                        "description": "First name of the user making the deposit (or representative for business)",
                        "examples": [
                          "John",
                          "Alice",
                          "Bob"
                        ]
                      },
                      "userEmail": {
                        "type": "string",
                        "maxLength": 254,
                        "format": "email",
                        "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                        "description": "Email of the user making the deposit",
                        "examples": [
                          "user@virtuabroker.com",
                          "john.doe@example.com",
                          "alice@example.com"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "maxLength": 150,
                        "description": "Address of the user making the deposit",
                        "examples": [
                          "123 Main St, Anytown, ES",
                          "456 Elm St, Anytown, ES",
                          "789 Oak St, Anytown, ES"
                        ]
                      },
                      "taxDocumentType": {
                        "type": "string",
                        "maxLength": 50,
                        "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                        "examples": [
                          "CC",
                          "NIT",
                          "CE",
                          "NIF",
                          "Other"
                        ]
                      },
                      "taxId": {
                        "type": "string",
                        "maxLength": 30,
                        "description": "Tax ID of the user making the deposit",
                        "examples": [
                          "123-45-6789",
                          "987-65-4321",
                          "111-22-3333"
                        ]
                      },
                      "country": {
                        "type": "string",
                        "enum": [
                          "US",
                          "CA",
                          "GB",
                          "DE",
                          "FR",
                          "AU",
                          "JP",
                          "KR",
                          "SE",
                          "NO",
                          "DK",
                          "FI",
                          "NL",
                          "BE",
                          "CH",
                          "AT",
                          "NZ",
                          "SG",
                          "IE",
                          "LU",
                          "PT",
                          "ES",
                          "IT",
                          "GR",
                          "CZ",
                          "PL",
                          "HU",
                          "SK",
                          "SI",
                          "EE",
                          "LT",
                          "LV",
                          "IS",
                          "MT",
                          "CY",
                          "HR",
                          "RO",
                          "BG",
                          "BR",
                          "AR",
                          "CL",
                          "MX",
                          "CO",
                          "PE",
                          "PA",
                          "UY",
                          "BO",
                          "ZA",
                          "NG",
                          "KE",
                          "GH",
                          "TZ",
                          "UG",
                          "RW",
                          "MW",
                          "ZM",
                          "BW",
                          "CD",
                          "CI",
                          "CM",
                          "IL",
                          "AE",
                          "QA",
                          "SA",
                          "OM",
                          "KW",
                          "BH",
                          "MY",
                          "PH",
                          "TH",
                          "VN",
                          "ID",
                          "IN",
                          "LK",
                          "NP",
                          "BD",
                          "PK",
                          "EG",
                          "MA",
                          "DZ",
                          "TN",
                          "JO",
                          "LB",
                          "TR",
                          "KH",
                          "MM",
                          "LA",
                          "EN",
                          "BT",
                          "VE",
                          "TW",
                          "HK",
                          "CN"
                        ],
                        "description": "Country code of the user making the deposit",
                        "examples": [
                          "ES",
                          "US",
                          "GB"
                        ]
                      },
                      "state": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "State of the user making the deposit",
                        "examples": [
                          "Madrid",
                          "New York",
                          "London"
                        ]
                      },
                      "postalCode": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 30,
                        "description": "Postal code of the user making the deposit",
                        "examples": [
                          "12345",
                          "67890",
                          "abcde"
                        ]
                      },
                      "city": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "City of the user making the deposit",
                        "examples": [
                          "Madrid",
                          "New York",
                          "London"
                        ]
                      },
                      "dob": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 30,
                        "description": "Date of birth of the user making the deposit",
                        "examples": [
                          "1990-01-01",
                          "1995-05-15",
                          "1988-12-31"
                        ]
                      },
                      "phoneNumber": {
                        "type": "string",
                        "maxLength": 30,
                        "description": "Phone number of the user making the deposit",
                        "examples": [
                          "+447700900123",
                          "+447700900456",
                          "+447700900789"
                        ]
                      },
                      "kycId": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 300,
                        "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                        "examples": [
                          "kyc-12345",
                          "kyc-67890",
                          "kyc-abcde"
                        ]
                      },
                      "activity": {
                        "type": "string",
                        "description": "Activity of the user making the deposit",
                        "examples": [
                          "worker",
                          "business",
                          "student"
                        ]
                      }
                    },
                    "required": [
                      "userType",
                      "businessName",
                      "firstName",
                      "userEmail",
                      "country"
                    ]
                  }
                ],
                "description": "User data of the person/company making the deposit",
                "examples": [
                  {
                    "userType": "individual",
                    "firstName": "John",
                    "lastName": "Doe",
                    "userEmail": "user@virtuabroker.com",
                    "address": "123 Main St, Anytown, ES",
                    "taxId": "123-45-6789",
                    "country": "ES"
                  },
                  {
                    "userType": "individual",
                    "firstName": "Alice",
                    "lastName": "Smith",
                    "userEmail": "alice@example.com",
                    "address": "456 Elm St, Anytown, ES",
                    "taxId": "987-65-4321",
                    "country": "ES"
                  }
                ]
              },
              "createdAt": {
                "type": "number",
                "description": "Creation time of the deposit",
                "examples": [
                  1723027132,
                  1723027133,
                  1723027134
                ]
              },
              "rail": {
                "type": "string",
                "enum": [
                  "BALANCE",
                  "SEPA",
                  "BTC",
                  "ETH",
                  "MATIC",
                  "POLYGON",
                  "CELO",
                  "TRON",
                  "SOLANA",
                  "ARBITRUM",
                  "OPTIMISM",
                  "AVALANCHE",
                  "BSC",
                  "BASE",
                  "XRP",
                  "PIX_BR",
                  "UPI",
                  "IMPS",
                  "TRY_BANK_TRANSFER",
                  "AED_BANK_TRANSFER",
                  "SPEI",
                  "IDR_BANK_TRANSFER",
                  "CREDIT_CARD",
                  "THAI_QR",
                  "VIET_QR",
                  "GCASH",
                  "ARGENTINA_BANK_TRANSFER",
                  "PSE",
                  "CLABE",
                  "PIX",
                  "BANK_DEPOSIT_COL",
                  "BANK_DEPOSIT_AR",
                  "BANK_DEPOSIT_CL",
                  "BANK_DEPOSIT_PE",
                  "BANK_DEPOSIT_BO",
                  "BANK_DEPOSIT_BR",
                  "BANK_DEPOSIT_NG",
                  "BANK_DEPOSIT_KE",
                  "BANK_DEPOSIT_GH",
                  "BANK_DEPOSIT_ZA",
                  "BANK_DEPOSIT_TZ",
                  "BANK_DEPOSIT_UG",
                  "BANK_DEPOSIT_RW",
                  "BANK_DEPOSIT_MW",
                  "BANK_DEPOSIT_ZM",
                  "BANK_DEPOSIT_BW",
                  "BANK_DEPOSIT_CD",
                  "BANK_DEPOSIT_XOF",
                  "BANK_DEPOSIT_XAF",
                  "MOBILE_MONEY_NG",
                  "MOBILE_MONEY_KE",
                  "MOBILE_MONEY_GH",
                  "MOBILE_MONEY_ZA",
                  "MOBILE_MONEY_TZ",
                  "MOBILE_MONEY_UG",
                  "MOBILE_MONEY_RW",
                  "MOBILE_MONEY_MW",
                  "MOBILE_MONEY_ZM",
                  "MOBILE_MONEY_BW",
                  "MOBILE_MONEY_CD",
                  "MOBILE_MONEY_XOF",
                  "MOBILE_MONEY_XAF",
                  "ACH_US",
                  "GBP_BANK_TRANSFER"
                ],
                "description": "Rail of the deposit"
              },
              "receivedAt": {
                "type": "number",
                "description": "Unix ms timestamp of when the funds for this deposit ARRIVED — recorded when the incoming payment is matched to the deposit, which is before it is credited. Present whenever funds have arrived, including a deposit whose funds are still held in review; omitted entirely when no funds ever arrived, so a never-funded or cancelled deposit has no value here and its presence is a reliable settlement signal for reconciliation. Identical on GET /v1/deposits and GET /v1/deposits/{depositId}. Note that the deposit object embedded in order and operation responses does not yet apply this rule — it returns the stored value. Not the creation time — use createdAt for that.",
                "examples": [
                  1723027132000,
                  1723027133000,
                  1723027134000
                ]
              },
              "expectedAmount": {
                "type": "number",
                "minimum": 0,
                "description": "Amount expected of the deposit",
                "examples": [
                  1000,
                  2000,
                  3000
                ]
              },
              "amount": {
                "type": "number",
                "minimum": 0,
                "description": "Amount received of the deposit",
                "examples": [
                  1000,
                  2000,
                  3000
                ]
              },
              "currency": {
                "anyOf": [
                  {
                    "type": "string",
                    "enum": [
                      "EUR",
                      "USD",
                      "GBP",
                      "BRL",
                      "MXN",
                      "ARS",
                      "COP",
                      "PEN",
                      "NGN",
                      "KES",
                      "TZS",
                      "UGX",
                      "RWF",
                      "MWK",
                      "ZMW",
                      "XOF",
                      "XAF",
                      "BWP"
                    ]
                  },
                  {
                    "type": "string",
                    "enum": [
                      "USDC",
                      "USDT",
                      "CUSD",
                      "BTC",
                      "ETH",
                      "POL",
                      "SOL",
                      "TRX",
                      "AVAX",
                      "XRP",
                      "BNB"
                    ]
                  }
                ],
                "description": "Currency of the deposit",
                "examples": [
                  "EUR",
                  "BRL"
                ]
              },
              "fee": {
                "type": "number",
                "minimum": 0,
                "description": "Fee for the deposit. This value is written once the deposit has been executed. Meanwhile it will appear 0.",
                "example": 10
              },
              "expectedFee": {
                "type": "number",
                "minimum": 0,
                "description": "Fee for the deposit. This value is correlated with the expected amount for the deposit.",
                "examples": [
                  10,
                  20,
                  30
                ]
              },
              "feeCurrency": {
                "anyOf": [
                  {
                    "type": "string",
                    "enum": [
                      "EUR",
                      "USD",
                      "GBP",
                      "BRL",
                      "MXN",
                      "ARS",
                      "COP",
                      "PEN",
                      "NGN",
                      "KES",
                      "TZS",
                      "UGX",
                      "RWF",
                      "MWK",
                      "ZMW",
                      "XOF",
                      "XAF",
                      "BWP"
                    ]
                  },
                  {
                    "type": "string",
                    "enum": [
                      "USDC",
                      "USDT",
                      "CUSD",
                      "BTC",
                      "ETH",
                      "POL",
                      "SOL",
                      "TRX",
                      "AVAX",
                      "XRP",
                      "BNB"
                    ]
                  }
                ],
                "description": "Currency of the fee",
                "examples": [
                  "EUR",
                  "BRL"
                ]
              },
              "status": {
                "anyOf": [
                  {
                    "type": "string",
                    "enum": [
                      "Pending",
                      "Processing",
                      "Success",
                      "Failed",
                      "Canceled",
                      "Reviewing"
                    ],
                    "description": "Common status values that are shared across all operation types",
                    "examples": [
                      "Pending",
                      "Processing",
                      "Success",
                      "Failed",
                      "Canceled",
                      "Reviewing"
                    ]
                  },
                  {
                    "type": "string",
                    "enum": [
                      "PendingCancel",
                      "Received"
                    ]
                  }
                ],
                "description": "Status of the deposit",
                "examples": [
                  "Pending",
                  "Success",
                  "Failed",
                  "Received",
                  "PendingCancel"
                ]
              },
              "depositInfo": {
                "oneOf": [
                  {
                    "type": "object",
                    "properties": {
                      "accountHolder": {
                        "type": "string",
                        "description": "Name of the account holder",
                        "example": "John Doe"
                      },
                      "iban": {
                        "type": "string",
                        "description": "SEPA Bank Account Number",
                        "example": "DE8937XXXXXXXXXXXX3000"
                      },
                      "bic": {
                        "type": "string",
                        "description": "Bank BIC/SWIFT code",
                        "example": "DEUTDEFF"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Name of the bank",
                        "example": "Deutsche Bank"
                      },
                      "bankAddress": {
                        "type": "string",
                        "description": "Address of the bank",
                        "example": "Taunusanlage 12"
                      },
                      "bankCity": {
                        "type": "string",
                        "description": "City of the bank",
                        "example": "Frankfurt am Main"
                      },
                      "bankZipcode": {
                        "type": "string",
                        "description": "Zipcode of the bank",
                        "example": "60325"
                      },
                      "bankCountry": {
                        "type": "string",
                        "enum": [
                          "US",
                          "CA",
                          "GB",
                          "DE",
                          "FR",
                          "AU",
                          "JP",
                          "KR",
                          "SE",
                          "NO",
                          "DK",
                          "FI",
                          "NL",
                          "BE",
                          "CH",
                          "AT",
                          "NZ",
                          "SG",
                          "IE",
                          "LU",
                          "PT",
                          "ES",
                          "IT",
                          "GR",
                          "CZ",
                          "PL",
                          "HU",
                          "SK",
                          "SI",
                          "EE",
                          "LT",
                          "LV",
                          "IS",
                          "MT",
                          "CY",
                          "HR",
                          "RO",
                          "BG",
                          "BR",
                          "AR",
                          "CL",
                          "MX",
                          "CO",
                          "PE",
                          "PA",
                          "UY",
                          "BO",
                          "ZA",
                          "NG",
                          "KE",
                          "GH",
                          "TZ",
                          "UG",
                          "RW",
                          "MW",
                          "ZM",
                          "BW",
                          "CD",
                          "CI",
                          "CM",
                          "IL",
                          "AE",
                          "QA",
                          "SA",
                          "OM",
                          "KW",
                          "BH",
                          "MY",
                          "PH",
                          "TH",
                          "VN",
                          "ID",
                          "IN",
                          "LK",
                          "NP",
                          "BD",
                          "PK",
                          "EG",
                          "MA",
                          "DZ",
                          "TN",
                          "JO",
                          "LB",
                          "TR",
                          "KH",
                          "MM",
                          "LA",
                          "EN",
                          "BT",
                          "VE",
                          "TW",
                          "HK",
                          "CN"
                        ],
                        "description": "Country of the bank",
                        "example": "DE"
                      },
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "SEPA"
                        ]
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount. It can be 0 for open-amount bank transfers where the sender chooses the final amount from their bank.",
                        "example": 1000
                      },
                      "referenceCode": {
                        "type": "string",
                        "minLength": 1,
                        "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order. The user must include this code when making the deposit to ensure accurate processing. In cases where the reference code is incorrect or missing, we manually match orders based on the sender's name and other available details. In case the deposit is not matched, we will mark the order as Reviewing and the system will require manual attention.",
                        "example": "REF123456"
                      },
                      "extraDepositMethods": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "methodType": {
                              "type": "string",
                              "enum": [
                                "HOSTED_CHECKOUT"
                              ],
                              "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                            },
                            "url": {
                              "type": "string",
                              "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                              "example": "https://checkout.example.com/pay/abc123"
                            },
                            "callbackUrl": {
                              "type": "string",
                              "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Payment reference for this method (equals the deposit/order reference)"
                            },
                            "amount": {
                              "type": "number",
                              "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                            },
                            "currency": {
                              "type": "string",
                              "description": "Currency of this method"
                            },
                            "expiresAt": {
                              "type": "number",
                              "description": "Unix ms after which `url` is no longer valid, when known"
                            }
                          },
                          "required": [
                            "methodType",
                            "url"
                          ],
                          "description": "An additional, optional way to pay this deposit"
                        },
                        "description": "Additional, optional ways to pay this same deposit (e.g. a hosted card page). The bank details above remain the primary method; ignore this field if you only support bank transfer."
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ],
                    "description": "Detailed information about a bank deposit, including the amount and a unique reference code for identification."
                  },
                  {
                    "type": "object",
                    "properties": {
                      "address": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Crypto wallet address",
                        "example": "0x1A2b3C4d5E6f7890AbCdEf1234567890AbCdEf12"
                      },
                      "network": {
                        "type": "string",
                        "enum": [
                          "MATIC",
                          "ETH",
                          "CELO",
                          "TRON",
                          "BTC",
                          "SOLANA",
                          "XRP",
                          "CARDANO",
                          "BSC",
                          "ARBITRUM",
                          "OPTIMISM",
                          "AVALANCHE",
                          "BASE"
                        ],
                        "description": "Network for the deposit for crypto deposits",
                        "examples": [
                          "ETH",
                          "MATIC",
                          "CELO"
                        ]
                      },
                      "memo": {
                        "type": "string",
                        "description": "Optional memo for the transaction",
                        "example": "Payment for services"
                      },
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "CRYPTO"
                        ]
                      },
                      "qrCode": {
                        "type": "string",
                        "description": "Base64-encoded QR image for the deposit address",
                        "example": "iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAIAAADTED8xAAABpklEQVR42u3BAQ0AAADCoPdPbQ8HFAAAAAAAAAAAAAAAAAA..."
                      },
                      "qrCodeUrl": {
                        "type": "string",
                        "format": "uri",
                        "description": "7-day signed GCS URL of the QR code PNG"
                      },
                      "qrCodeExpiresAt": {
                        "type": "number",
                        "description": "Unix timestamp (ms) when qrCodeUrl expires"
                      },
                      "receivingAddress": {
                        "type": "string",
                        "description": "The wallet address where funds should be sent",
                        "example": "0xAbCdEf0123456789AbCdEf0123456789AbCdEf01"
                      },
                      "tokenContract": {
                        "type": "string",
                        "description": "The ERC20 token contract address",
                        "example": "0x765DE816845861e75A25fCA122bb6898B8B1282a"
                      },
                      "decimals": {
                        "type": "number",
                        "description": "Token decimals (default 18)",
                        "example": 18
                      }
                    },
                    "required": [
                      "address",
                      "network",
                      "depositType"
                    ],
                    "description": "Crypto Deposit Information"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "base64QRCode": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Base64 encoded QR code",
                        "example": "base64QRCode"
                      },
                      "qrCodeString": {
                        "type": "string",
                        "minLength": 1,
                        "description": "The Pix copy-and-paste code (BR Code payload) the payer pastes into their bank app. Pass it through unchanged — it carries its own checksum.",
                        "example": "qrCodeString"
                      },
                      "referenceCode": {
                        "type": "string",
                        "minLength": 1,
                        "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order",
                        "example": "REF123456"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "exclusiveMinimum": true,
                        "description": "The monetary value to be deposited into the bank. This amount should be positive and accurately reflect the intended deposit.",
                        "example": 1000
                      },
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "PIX"
                        ]
                      }
                    },
                    "required": [
                      "base64QRCode",
                      "qrCodeString",
                      "referenceCode",
                      "amount",
                      "depositType"
                    ],
                    "description": "Pix Deposit Information"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "CREDIT_CARD"
                        ]
                      }
                    },
                    "required": [
                      "depositType"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "bankName": {
                        "type": "string",
                        "description": "Name of the bank (present when the rail provides it)"
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Name of the account holder (present when the rail provides it)"
                      },
                      "clabe": {
                        "type": "string",
                        "description": "CLABE number"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Bank account number (e.g. from the BANK_TRANSFER payment method)"
                      },
                      "reference": {
                        "type": "string",
                        "description": "Payment reference (e.g. from the BANK_TRANSFER payment method)"
                      },
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "CLABE"
                        ],
                        "description": "Type of the deposit"
                      }
                    },
                    "required": [
                      "clabe",
                      "depositType"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "url": {
                        "type": "string",
                        "description": "URL of the PSE payment"
                      },
                      "amountPrefilled": {
                        "type": "boolean",
                        "description": "Whether the payment page already carries the amount. When false or absent, the payer must enter it."
                      },
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "PSE"
                        ],
                        "description": "Type of the deposit"
                      }
                    },
                    "required": [
                      "url",
                      "depositType"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BALANCE"
                        ]
                      }
                    },
                    "required": [
                      "depositType"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "PENDING"
                        ]
                      },
                      "currency": {
                        "type": "string",
                        "description": "Currency of the deposit"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the order/deposit"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount. It can be 0 while bank transfer details are open-amount or still being provisioned."
                      },
                      "extraDepositMethods": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "methodType": {
                              "type": "string",
                              "enum": [
                                "HOSTED_CHECKOUT"
                              ],
                              "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                            },
                            "url": {
                              "type": "string",
                              "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                              "example": "https://checkout.example.com/pay/abc123"
                            },
                            "callbackUrl": {
                              "type": "string",
                              "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Payment reference for this method (equals the deposit/order reference)"
                            },
                            "amount": {
                              "type": "number",
                              "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                            },
                            "currency": {
                              "type": "string",
                              "description": "Currency of this method"
                            },
                            "expiresAt": {
                              "type": "number",
                              "description": "Unix ms after which `url` is no longer valid, when known"
                            }
                          },
                          "required": [
                            "methodType",
                            "url"
                          ],
                          "description": "An additional, optional way to pay this deposit"
                        },
                        "description": "Additional ways to pay while the bank details are being provisioned (e.g. a hosted card page). Optional — ignore it and wait for the bank details if you only support bank transfer."
                      },
                      "pendingReason": {
                        "type": "string",
                        "enum": [
                          "collection_account_activating",
                          "accountless_per_account_corridor"
                        ],
                        "description": "Why the instructions are still being provisioned, when the reason is known. `collection_account_activating` means the collection account for this payer is being activated and payable details are expected shortly. `accountless_per_account_corridor` means this corridor collects only into a collection account dedicated to the paying account, this request names no account, and none can be created for it — so payable details will NOT arrive by waiting; create the deposit against an account instead. Absence never conveys timing on either surface: here it means only that no reason is classifiable, and an account-level deposit-method instruction never carries the field at all. Treat the values as an open set and ignore any you do not recognise."
                      }
                    },
                    "required": [
                      "depositType",
                      "currency",
                      "referenceCode",
                      "amount"
                    ],
                    "description": "Deposit details are being provisioned; poll the order/deposit or wait for webhook"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "IMPS"
                        ]
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Name of the bank"
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Name of the account holder"
                      },
                      "ifsc": {
                        "type": "string",
                        "description": "ifsc number"
                      },
                      "type": {
                        "type": "string",
                        "description": "Type of the deposit"
                      },
                      "branch": {
                        "type": "string",
                        "description": "Branch of the bank"
                      },
                      "bank": {
                        "type": "string",
                        "description": "Bank of the account"
                      },
                      "otp": {
                        "type": "string",
                        "description": "OTP of the deposit"
                      },
                      "bankNotes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "number",
                              "description": "Type of note: -1 for warning, 1 for info"
                            },
                            "msg": {
                              "type": "string",
                              "description": "Message content"
                            }
                          },
                          "required": [
                            "type",
                            "msg"
                          ]
                        },
                        "description": "Additional bank instructions"
                      }
                    },
                    "required": [
                      "depositType",
                      "accountNumber",
                      "bankName",
                      "accountHolder",
                      "ifsc",
                      "type",
                      "branch",
                      "bank",
                      "otp"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "UPI"
                        ]
                      },
                      "vpa": {
                        "type": "string",
                        "description": "Virtual Payment Address"
                      },
                      "name": {
                        "type": "string",
                        "description": "Name of the account holder"
                      },
                      "otp": {
                        "type": "string",
                        "description": "OTP for the transaction"
                      },
                      "paymentLink": {
                        "type": "string",
                        "description": "Payment link"
                      },
                      "upiNotes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "number",
                              "description": "Type of note: -1 for warning, 1 for info"
                            },
                            "msg": {
                              "type": "string",
                              "description": "Message content"
                            }
                          },
                          "required": [
                            "type",
                            "msg"
                          ]
                        },
                        "description": "Additional UPI instructions"
                      }
                    },
                    "required": [
                      "depositType",
                      "vpa",
                      "name",
                      "otp",
                      "paymentLink"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "AED_BANK_TRANSFER"
                        ]
                      },
                      "iban": {
                        "type": "string",
                        "description": "International Bank Account Number"
                      },
                      "name": {
                        "type": "string",
                        "description": "Name of the account holder"
                      },
                      "bank": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "type": {
                        "type": "string",
                        "description": "Account type"
                      },
                      "address": {
                        "type": "string",
                        "description": "Bank address"
                      },
                      "email": {
                        "type": "string",
                        "description": "Contact email"
                      },
                      "phoneNumber": {
                        "type": "string",
                        "description": "Contact phone number"
                      },
                      "transferCode": {
                        "type": "string",
                        "description": "Transfer code"
                      },
                      "poBox": {
                        "type": "string",
                        "description": "P.O. Box"
                      },
                      "otp": {
                        "type": "string",
                        "description": "OTP for the transaction"
                      },
                      "bankNotes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "number",
                              "description": "Type of note: -1 for warning, 1 for info"
                            },
                            "msg": {
                              "type": "string",
                              "description": "Message content"
                            }
                          },
                          "required": [
                            "type",
                            "msg"
                          ]
                        },
                        "description": "Additional bank instructions"
                      }
                    },
                    "required": [
                      "depositType",
                      "iban",
                      "name",
                      "bank",
                      "type",
                      "address",
                      "email",
                      "phoneNumber",
                      "transferCode",
                      "poBox",
                      "otp"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "SPEI"
                        ]
                      },
                      "clabe": {
                        "type": "string",
                        "description": "CLABE number"
                      },
                      "name": {
                        "type": "string",
                        "description": "Name of the account holder"
                      },
                      "bank": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankNotes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "number",
                              "description": "Type of note: -1 for warning, 1 for info"
                            },
                            "msg": {
                              "type": "string",
                              "description": "Message content"
                            }
                          },
                          "required": [
                            "type",
                            "msg"
                          ]
                        },
                        "description": "Additional bank instructions"
                      }
                    },
                    "required": [
                      "depositType",
                      "clabe",
                      "name",
                      "bank"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "TRY_BANK_TRANSFER"
                        ]
                      },
                      "iban": {
                        "type": "string",
                        "description": "International Bank Account Number"
                      },
                      "name": {
                        "type": "string",
                        "description": "Name of the account holder"
                      },
                      "bank": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "otp": {
                        "type": "string",
                        "description": "OTP for the transaction"
                      },
                      "bankNotes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "number",
                              "description": "Type of note: -1 for warning, 1 for info"
                            },
                            "msg": {
                              "type": "string",
                              "description": "Message content"
                            }
                          },
                          "required": [
                            "type",
                            "msg"
                          ]
                        },
                        "description": "Additional bank instructions"
                      }
                    },
                    "required": [
                      "depositType",
                      "iban",
                      "name",
                      "bank",
                      "otp"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "IDR_BANK_TRANSFER"
                        ]
                      },
                      "virtualAccount": {
                        "type": "string",
                        "description": "Virtual account number"
                      },
                      "name": {
                        "type": "string",
                        "description": "Name of the account holder"
                      },
                      "bank": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankNotes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "number",
                              "description": "Type of note: -1 for warning, 1 for info"
                            },
                            "msg": {
                              "type": "string",
                              "description": "Message content"
                            }
                          },
                          "required": [
                            "type",
                            "msg"
                          ]
                        },
                        "description": "Additional bank instructions"
                      }
                    },
                    "required": [
                      "depositType",
                      "virtualAccount",
                      "name",
                      "bank"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "THAI_QR"
                        ]
                      },
                      "qrCode": {
                        "type": "string",
                        "description": "QR code"
                      },
                      "otp": {
                        "type": "string",
                        "description": "OTP for the transaction"
                      },
                      "bankNotes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "number",
                              "description": "Type of note: -1 for warning, 1 for info"
                            },
                            "msg": {
                              "type": "string",
                              "description": "Message content"
                            }
                          },
                          "required": [
                            "type",
                            "msg"
                          ]
                        },
                        "description": "Additional bank instructions"
                      }
                    },
                    "required": [
                      "depositType",
                      "qrCode",
                      "otp"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "VIET_QR"
                        ]
                      },
                      "qrCode": {
                        "type": "string",
                        "description": "QR code"
                      },
                      "otp": {
                        "type": "string",
                        "description": "OTP for the transaction"
                      },
                      "bankNotes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "number",
                              "description": "Type of note: -1 for warning, 1 for info"
                            },
                            "msg": {
                              "type": "string",
                              "description": "Message content"
                            }
                          },
                          "required": [
                            "type",
                            "msg"
                          ]
                        },
                        "description": "Additional bank instructions"
                      }
                    },
                    "required": [
                      "depositType",
                      "qrCode",
                      "otp"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "GCASH"
                        ]
                      },
                      "qrCode": {
                        "type": "string",
                        "description": "QR code"
                      },
                      "otp": {
                        "type": "string",
                        "description": "OTP for the transaction"
                      },
                      "bankNotes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "number",
                              "description": "Type of note: -1 for warning, 1 for info"
                            },
                            "msg": {
                              "type": "string",
                              "description": "Message content"
                            }
                          },
                          "required": [
                            "type",
                            "msg"
                          ]
                        },
                        "description": "Additional bank instructions"
                      }
                    },
                    "required": [
                      "depositType",
                      "qrCode",
                      "otp"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "ARGENTINA_BANK_TRANSFER"
                        ]
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Account number"
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "accountNumber"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "ACH_US"
                        ]
                      },
                      "routingNumber": {
                        "type": "string",
                        "description": "US bank ABA routing number"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "US bank account number"
                      },
                      "beneficiaryName": {
                        "type": "string",
                        "description": "Beneficiary name on the account"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Name of the bank"
                      },
                      "bankAddress": {
                        "type": "string",
                        "description": "Address of the bank"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names (e.g. ACH, Wire)"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount in USD"
                      },
                      "referenceCode": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Reference code to include in the wire/ACH transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "routingNumber",
                      "accountNumber",
                      "beneficiaryName",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "ACH_PULL"
                        ]
                      }
                    },
                    "required": [
                      "depositType"
                    ],
                    "description": "Funds are pulled from the holder's own linked US bank account; no transfer instructions apply"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "LOCALBANK"
                        ],
                        "description": "Deprecated generic local-bank payin type. Superseded by the corridor-specific deposit types (e.g. SEPA, ACH_US, GBP_BANK_TRANSFER, CLABE/SPEI, PIX, ARGENTINA_BANK_TRANSFER, BANK_DEPOSIT_<CC>). Still returned on some corridors and on historical records, so integrators must continue to handle it. Discover the applicable per-currency method via GET /v1/currencies/{currency}/payin-schema.",
                        "deprecated": true
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "GBP_BANK_TRANSFER"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "UK bank account number"
                      },
                      "sortCode": {
                        "type": "string",
                        "description": "UK sort code"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Name of the bank"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names (e.g. Faster Payments, CHAPS, BACS)"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount in GBP"
                      },
                      "referenceCode": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Reference code to include in the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "accountHolder",
                      "accountNumber",
                      "sortCode",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_COL"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_CL"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_BO"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_BR"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_NG"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_KE"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_GH"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_ZA"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_TZ"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_UG"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_RW"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_MW"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_ZM"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_BW"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_CD"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_XOF"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_XAF"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_NG"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_KE"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_GH"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_ZA"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_TZ"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_UG"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_RW"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_MW"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_ZM"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_BW"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_CD"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_XOF"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "depositType": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_XAF"
                        ]
                      },
                      "accountHolder": {
                        "type": "string",
                        "description": "Account holder name"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "Local bank account number"
                      },
                      "bankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "bankCountry": {
                        "type": "string",
                        "description": "ISO-3166 country code"
                      },
                      "routingCodes": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                            },
                            "value": {
                              "type": "string",
                              "description": "Routing code value"
                            }
                          },
                          "required": [
                            "type",
                            "value"
                          ]
                        },
                        "description": "Routing identifiers (e.g. sort code, routing number)"
                      },
                      "schemes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted payment scheme names for this account"
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Expected deposit amount"
                      },
                      "referenceCode": {
                        "type": "string",
                        "description": "Reference code for the transfer"
                      }
                    },
                    "required": [
                      "depositType",
                      "amount",
                      "referenceCode"
                    ]
                  }
                ],
                "description": "Details of the deposit",
                "examples": [
                  {
                    "accountHolder": "John Doe",
                    "iban": "DE8937XXXXXXXXXXXX3000",
                    "bic": "COBADEFFXXX",
                    "bankName": "Commerzbank",
                    "bankAddress": "Mainzer Landstrasse 151-153",
                    "bankCity": "Frankfurt",
                    "bankZipcode": "60327",
                    "bankCountry": "DE",
                    "amount": 1000,
                    "referenceCode": "ABC123",
                    "depositType": "SEPA"
                  }
                ]
              },
              "depositInfoPending": {
                "type": "boolean",
                "description": "True while the payment instructions are still being prepared. Poll this deposit until it is false (or absent) before showing the instructions to the payer."
              },
              "complianceHold": {
                "type": "object",
                "properties": {
                  "reason": {
                    "type": "string",
                    "enum": [
                      "screening",
                      "fiat_monitoring"
                    ],
                    "description": "Compliance hold reason"
                  }
                },
                "required": [
                  "reason"
                ],
                "description": "Present while the inbound transfer funding this deposit is held in provider compliance review. The deposit stays Reviewing (amount 0, never credited) until the hold clears (promote to Received) or the transfer is rejected/returned (terminalize)."
              }
            },
            "required": [
              "depositId",
              "createdAt",
              "expectedAmount",
              "amount",
              "currency",
              "fee",
              "expectedFee",
              "feeCurrency",
              "status",
              "depositInfo"
            ],
            "description": "Details of the deposit associated with the order"
          },
          "trade": {
            "type": "object",
            "properties": {
              "tradeId": {
                "type": "string",
                "description": "ID of the trade",
                "example": "123e4567-e89b-12d3-a456-426614174000"
              },
              "createdAt": {
                "type": "number",
                "description": "Creation time of the trade",
                "example": 1723027132
              },
              "pair": {
                "type": "string",
                "description": "Asset pair to trade",
                "example": "BTC/EUR"
              },
              "tradeType": {
                "type": "string",
                "enum": [
                  "buy",
                  "sell"
                ],
                "description": "Type of trade"
              },
              "volume": {
                "type": "number",
                "minimum": 0,
                "exclusiveMinimum": true,
                "description": "Order quantity in lots",
                "example": 0.5
              },
              "price": {
                "type": "number",
                "minimum": 0,
                "exclusiveMinimum": true,
                "description": "Price at which to place the order based on the pair",
                "example": 30000
              },
              "conversionRate": {
                "type": "number",
                "minimum": 0,
                "exclusiveMinimum": true,
                "description": "Conversion rate at which to place the order based on the pair",
                "example": 30000
              },
              "fee": {
                "type": "number",
                "minimum": 0,
                "description": "Fee for the trade",
                "example": 0.1
              },
              "feeCurrency": {
                "type": "string",
                "description": "Currency of the fee",
                "example": "EUR"
              },
              "userEmail": {
                "type": "string",
                "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                "description": "Email of the user making the trade",
                "example": "user@example.com"
              }
            },
            "required": [
              "tradeId",
              "createdAt",
              "pair",
              "tradeType",
              "volume",
              "fee",
              "feeCurrency",
              "userEmail"
            ],
            "description": "Details of the trade associated with the order"
          },
          "withdraw": {
            "type": "object",
            "properties": {
              "withdrawalId": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 12,
                    "maxLength": 12,
                    "pattern": "^[A-Z0-9]{12}$",
                    "examples": [
                      "01CLFXMT67II",
                      "2R7E5Y5KFXP8",
                      "4FWWRE3Y2URM"
                    ]
                  },
                  {
                    "type": "string",
                    "format": "uuid"
                  }
                ],
                "description": "ID of the withdrawal"
              },
              "userData": {
                "oneOf": [
                  {
                    "type": "object",
                    "properties": {
                      "userType": {
                        "type": "string",
                        "enum": [
                          "individual"
                        ]
                      },
                      "firstName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 50,
                        "description": "First name of the user making the deposit (or representative for business)",
                        "examples": [
                          "John",
                          "Alice",
                          "Bob"
                        ]
                      },
                      "lastName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "Last name of the user making the deposit (or representative for business)",
                        "examples": [
                          "Doe",
                          "Smith",
                          "Johnson"
                        ]
                      },
                      "userEmail": {
                        "type": "string",
                        "maxLength": 254,
                        "format": "email",
                        "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                        "description": "Email of the user making the deposit",
                        "examples": [
                          "user@virtuabroker.com",
                          "john.doe@example.com",
                          "alice@example.com"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "maxLength": 150,
                        "description": "Address of the user making the deposit",
                        "examples": [
                          "123 Main St, Anytown, ES",
                          "456 Elm St, Anytown, ES",
                          "789 Oak St, Anytown, ES"
                        ]
                      },
                      "taxDocumentType": {
                        "type": "string",
                        "maxLength": 50,
                        "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                        "examples": [
                          "CC",
                          "NIT",
                          "CE",
                          "NIF",
                          "Other"
                        ]
                      },
                      "taxId": {
                        "type": "string",
                        "maxLength": 30,
                        "description": "Tax ID of the user making the deposit",
                        "examples": [
                          "123-45-6789",
                          "987-65-4321",
                          "111-22-3333"
                        ]
                      },
                      "country": {
                        "type": "string",
                        "enum": [
                          "US",
                          "CA",
                          "GB",
                          "DE",
                          "FR",
                          "AU",
                          "JP",
                          "KR",
                          "SE",
                          "NO",
                          "DK",
                          "FI",
                          "NL",
                          "BE",
                          "CH",
                          "AT",
                          "NZ",
                          "SG",
                          "IE",
                          "LU",
                          "PT",
                          "ES",
                          "IT",
                          "GR",
                          "CZ",
                          "PL",
                          "HU",
                          "SK",
                          "SI",
                          "EE",
                          "LT",
                          "LV",
                          "IS",
                          "MT",
                          "CY",
                          "HR",
                          "RO",
                          "BG",
                          "BR",
                          "AR",
                          "CL",
                          "MX",
                          "CO",
                          "PE",
                          "PA",
                          "UY",
                          "BO",
                          "ZA",
                          "NG",
                          "KE",
                          "GH",
                          "TZ",
                          "UG",
                          "RW",
                          "MW",
                          "ZM",
                          "BW",
                          "CD",
                          "CI",
                          "CM",
                          "IL",
                          "AE",
                          "QA",
                          "SA",
                          "OM",
                          "KW",
                          "BH",
                          "MY",
                          "PH",
                          "TH",
                          "VN",
                          "ID",
                          "IN",
                          "LK",
                          "NP",
                          "BD",
                          "PK",
                          "EG",
                          "MA",
                          "DZ",
                          "TN",
                          "JO",
                          "LB",
                          "TR",
                          "KH",
                          "MM",
                          "LA",
                          "EN",
                          "BT",
                          "VE",
                          "TW",
                          "HK",
                          "CN"
                        ],
                        "description": "Country code of the user making the deposit",
                        "examples": [
                          "ES",
                          "US",
                          "GB"
                        ]
                      },
                      "state": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "State of the user making the deposit",
                        "examples": [
                          "Madrid",
                          "New York",
                          "London"
                        ]
                      },
                      "postalCode": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 30,
                        "description": "Postal code of the user making the deposit",
                        "examples": [
                          "12345",
                          "67890",
                          "abcde"
                        ]
                      },
                      "city": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "City of the user making the deposit",
                        "examples": [
                          "Madrid",
                          "New York",
                          "London"
                        ]
                      },
                      "dob": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 30,
                        "description": "Date of birth of the user making the deposit",
                        "examples": [
                          "1990-01-01",
                          "1995-05-15",
                          "1988-12-31"
                        ]
                      },
                      "phoneNumber": {
                        "type": "string",
                        "maxLength": 30,
                        "description": "Phone number of the user making the deposit",
                        "examples": [
                          "+447700900123",
                          "+447700900456",
                          "+447700900789"
                        ]
                      },
                      "kycId": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 300,
                        "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                        "examples": [
                          "kyc-12345",
                          "kyc-67890",
                          "kyc-abcde"
                        ]
                      },
                      "activity": {
                        "type": "string",
                        "description": "Activity of the user making the deposit",
                        "examples": [
                          "worker",
                          "business",
                          "student"
                        ]
                      }
                    },
                    "required": [
                      "userType",
                      "firstName",
                      "userEmail",
                      "country"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "userType": {
                        "type": "string",
                        "enum": [
                          "business"
                        ]
                      },
                      "businessName": {
                        "type": "string",
                        "maxLength": 150,
                        "description": "Business name (required when userType is business)",
                        "examples": [
                          "Acme Corp",
                          "Tech Solutions Inc",
                          "Global Services Ltd"
                        ]
                      },
                      "firstName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 50,
                        "description": "First name of the user making the deposit (or representative for business)",
                        "examples": [
                          "John",
                          "Alice",
                          "Bob"
                        ]
                      },
                      "userEmail": {
                        "type": "string",
                        "maxLength": 254,
                        "format": "email",
                        "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                        "description": "Email of the user making the deposit",
                        "examples": [
                          "user@virtuabroker.com",
                          "john.doe@example.com",
                          "alice@example.com"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "maxLength": 150,
                        "description": "Address of the user making the deposit",
                        "examples": [
                          "123 Main St, Anytown, ES",
                          "456 Elm St, Anytown, ES",
                          "789 Oak St, Anytown, ES"
                        ]
                      },
                      "taxDocumentType": {
                        "type": "string",
                        "maxLength": 50,
                        "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                        "examples": [
                          "CC",
                          "NIT",
                          "CE",
                          "NIF",
                          "Other"
                        ]
                      },
                      "taxId": {
                        "type": "string",
                        "maxLength": 30,
                        "description": "Tax ID of the user making the deposit",
                        "examples": [
                          "123-45-6789",
                          "987-65-4321",
                          "111-22-3333"
                        ]
                      },
                      "country": {
                        "type": "string",
                        "enum": [
                          "US",
                          "CA",
                          "GB",
                          "DE",
                          "FR",
                          "AU",
                          "JP",
                          "KR",
                          "SE",
                          "NO",
                          "DK",
                          "FI",
                          "NL",
                          "BE",
                          "CH",
                          "AT",
                          "NZ",
                          "SG",
                          "IE",
                          "LU",
                          "PT",
                          "ES",
                          "IT",
                          "GR",
                          "CZ",
                          "PL",
                          "HU",
                          "SK",
                          "SI",
                          "EE",
                          "LT",
                          "LV",
                          "IS",
                          "MT",
                          "CY",
                          "HR",
                          "RO",
                          "BG",
                          "BR",
                          "AR",
                          "CL",
                          "MX",
                          "CO",
                          "PE",
                          "PA",
                          "UY",
                          "BO",
                          "ZA",
                          "NG",
                          "KE",
                          "GH",
                          "TZ",
                          "UG",
                          "RW",
                          "MW",
                          "ZM",
                          "BW",
                          "CD",
                          "CI",
                          "CM",
                          "IL",
                          "AE",
                          "QA",
                          "SA",
                          "OM",
                          "KW",
                          "BH",
                          "MY",
                          "PH",
                          "TH",
                          "VN",
                          "ID",
                          "IN",
                          "LK",
                          "NP",
                          "BD",
                          "PK",
                          "EG",
                          "MA",
                          "DZ",
                          "TN",
                          "JO",
                          "LB",
                          "TR",
                          "KH",
                          "MM",
                          "LA",
                          "EN",
                          "BT",
                          "VE",
                          "TW",
                          "HK",
                          "CN"
                        ],
                        "description": "Country code of the user making the deposit",
                        "examples": [
                          "ES",
                          "US",
                          "GB"
                        ]
                      },
                      "state": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "State of the user making the deposit",
                        "examples": [
                          "Madrid",
                          "New York",
                          "London"
                        ]
                      },
                      "postalCode": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 30,
                        "description": "Postal code of the user making the deposit",
                        "examples": [
                          "12345",
                          "67890",
                          "abcde"
                        ]
                      },
                      "city": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "City of the user making the deposit",
                        "examples": [
                          "Madrid",
                          "New York",
                          "London"
                        ]
                      },
                      "dob": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 30,
                        "description": "Date of birth of the user making the deposit",
                        "examples": [
                          "1990-01-01",
                          "1995-05-15",
                          "1988-12-31"
                        ]
                      },
                      "phoneNumber": {
                        "type": "string",
                        "maxLength": 30,
                        "description": "Phone number of the user making the deposit",
                        "examples": [
                          "+447700900123",
                          "+447700900456",
                          "+447700900789"
                        ]
                      },
                      "kycId": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 300,
                        "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                        "examples": [
                          "kyc-12345",
                          "kyc-67890",
                          "kyc-abcde"
                        ]
                      },
                      "activity": {
                        "type": "string",
                        "description": "Activity of the user making the deposit",
                        "examples": [
                          "worker",
                          "business",
                          "student"
                        ]
                      }
                    },
                    "required": [
                      "userType",
                      "businessName",
                      "firstName",
                      "userEmail",
                      "country"
                    ]
                  }
                ],
                "description": "User data for the withdrawal"
              },
              "createdAt": {
                "type": "number",
                "description": "Creation time of the withdrawal",
                "example": 1723027132
              },
              "updatedAt": {
                "type": "number",
                "description": "Last update time of the withdrawal",
                "example": 1723027132
              },
              "userEmail": {
                "type": "string",
                "format": "email",
                "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                "description": "Email of the user making the request",
                "example": "user@example.com"
              },
              "amount": {
                "type": "number",
                "description": "Amount to be withdrawn. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
                "example": 1000
              },
              "currency": {
                "type": "string",
                "description": "Currency of the withdrawal",
                "example": "EUR"
              },
              "fee": {
                "type": "number",
                "description": "Fee for the withdrawal. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
                "example": 10
              },
              "feeCurrency": {
                "type": "string",
                "description": "Currency of the fee",
                "example": "EUR"
              },
              "destinationTransferData": {
                "oneOf": [
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "BALANCE"
                        ]
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "Balance transfer details",
                    "title": "Balance"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "iban": {
                        "type": "string",
                        "description": "IBAN number"
                      },
                      "bic": {
                        "type": "string",
                        "description": "BIC number (optional)"
                      },
                      "country": {
                        "type": "string",
                        "description": "Country code"
                      },
                      "accountType": {
                        "type": "string",
                        "enum": [
                          "PERSONAL",
                          "BUSINESS"
                        ],
                        "default": "PERSONAL",
                        "description": "Account type (optional)"
                      },
                      "city": {
                        "type": "string",
                        "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                      },
                      "postalCode": {
                        "type": "string",
                        "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                      },
                      "address": {
                        "type": "string",
                        "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "SEPA"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "iban",
                      "country",
                      "type"
                    ],
                    "description": "SEPA transfer details",
                    "title": "SEPA"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "UK bank account number"
                      },
                      "sortCode": {
                        "type": "string",
                        "description": "UK sort code"
                      },
                      "country": {
                        "type": "string",
                        "enum": [
                          "GB"
                        ],
                        "default": "GB",
                        "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                      },
                      "accountType": {
                        "type": "string",
                        "enum": [
                          "PERSONAL",
                          "BUSINESS"
                        ],
                        "default": "PERSONAL",
                        "description": "Account type (optional)"
                      },
                      "city": {
                        "type": "string",
                        "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                      },
                      "postalCode": {
                        "type": "string",
                        "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                      },
                      "address": {
                        "type": "string",
                        "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "GBP_BANK_TRANSFER"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "accountNumber",
                      "sortCode",
                      "type"
                    ],
                    "description": "GBP domestic bank transfer details",
                    "title": "BankDepositGB"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "US bank account number"
                      },
                      "routingNumber": {
                        "type": "string",
                        "description": "US ABA routing number"
                      },
                      "country": {
                        "type": "string",
                        "enum": [
                          "US"
                        ],
                        "default": "US",
                        "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                      },
                      "accountType": {
                        "type": "string",
                        "enum": [
                          "PERSONAL",
                          "BUSINESS"
                        ],
                        "default": "PERSONAL",
                        "description": "Account type (optional)"
                      },
                      "bankAccountType": {
                        "type": "string",
                        "enum": [
                          "CHECKING",
                          "SAVINGS"
                        ],
                        "default": "CHECKING",
                        "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                      },
                      "city": {
                        "type": "string",
                        "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                      },
                      "postalCode": {
                        "type": "string",
                        "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                      },
                      "state": {
                        "type": "string",
                        "pattern": "^[A-Z]{2}$",
                        "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                      },
                      "address": {
                        "type": "string",
                        "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "ACH_US"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "accountNumber",
                      "routingNumber",
                      "state",
                      "type"
                    ],
                    "description": "USD ACH transfer details",
                    "title": "AchUS"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "linkedBankAccount"
                        ]
                      },
                      "accountLinkId": {
                        "type": "string",
                        "pattern": "^alnk_[0-9a-f]{24}$",
                        "description": "Identifier of one of the account holder own linked bank accounts",
                        "examples": [
                          "alnk_0123456789abcdef01234567"
                        ]
                      }
                    },
                    "required": [
                      "type",
                      "accountLinkId"
                    ],
                    "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                    "title": "LinkedBankAccount",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "ETH"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "ETH destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "ETH"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "MATIC"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "MATIC destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "MATIC"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "SOL"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "SOL destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "SOL"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "TRON"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "TRON destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "TRON"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "CELO"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "CELO destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "CELO"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "BTC"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "BTC destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "BTC"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "SOLANA"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "SOLANA destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "SOLANA"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "XRP"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "XRP destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "XRP"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "CARDANO"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "CARDANO destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "CARDANO"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "BSC"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "BSC destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "BSC"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "ARBITRUM"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "ARBITRUM destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "ARBITRUM"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "OPTIMISM"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "OPTIMISM destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "OPTIMISM"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "AVALANCHE"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "AVALANCHE destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "AVALANCHE"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "BASE"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "BASE destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "BASE"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_COL"
                        ]
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Recipient ID document number. Required when creating or updating a destination."
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                    "title": "Bank Deposit COL"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "brebKey": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Bre-B key (llave) that identifies the recipient account"
                      },
                      "email": {
                        "type": "string",
                        "description": "Recipient email (optional contact for the Bre-B rail)"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Recipient phone number (optional contact for the Bre-B rail)"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BRE_B_COP"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "brebKey",
                      "type"
                    ],
                    "description": "Colombian Bre-B payout details",
                    "title": "Bre-B COP"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "pattern": "^\\d{4}$",
                        "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                      },
                      "destinationBankAccountNumber": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Recipient bank account number"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Recipient ID document number"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "ACH_COP"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankCode",
                      "destinationBankAccountNumber",
                      "destinationBankAccountType",
                      "destinationDocumentType",
                      "destinationTaxId",
                      "type"
                    ],
                    "description": "Colombian ACH payout details",
                    "title": "ACH COP"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (unused for TWD — no network discovery)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "minLength": 2,
                        "description": "Bank name (required — TWD payouts run over SWIFT)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_TW"
                        ]
                      },
                      "destinationBankBranch": {
                        "type": "string",
                        "minLength": 2,
                        "description": "Bank branch (required — TWD payouts run over SWIFT)"
                      },
                      "bic": {
                        "type": "string",
                        "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                        "description": "SWIFT BIC code (required for TWD payouts)"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "description": "Type of bank account (legacy, optional)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Tax ID of the recipient (legacy, optional)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "description": "Document type of the recipient (legacy, optional)"
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "destinationBankName",
                      "type",
                      "destinationBankBranch",
                      "bic"
                    ],
                    "description": "Taiwan bank deposit details (SWIFT payout)",
                    "title": "Bank Deposit TW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "description": "Bank code"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationBankBranch": {
                        "type": "string",
                        "description": "Bank branch"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Tax ID of the recipient"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_BR"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankCode",
                      "destinationBankAccount",
                      "destinationBankBranch",
                      "destinationTaxId",
                      "type"
                    ],
                    "description": "Brazilian bank deposit details",
                    "title": "Bank Deposit BR"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPixCode": {
                        "type": "string",
                        "description": "PIX code"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Tax ID of the recipient"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "PIX_BR"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPixCode",
                      "destinationTaxId",
                      "type"
                    ],
                    "description": "Brazilian PIX details",
                    "title": "PIX BR"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccountNumber": {
                        "type": "string",
                        "description": "Bank account number"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Name of the bank"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                        "description": "Tax ID of the recipient"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "description": "Type of bank account"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_VEN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccountNumber",
                      "destinationBankName",
                      "destinationTaxId",
                      "destinationBankAccountType",
                      "type"
                    ],
                    "description": "Venezuelan bank deposit details",
                    "title": "Bank Deposit VEN"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "description": "Bank code"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                        "description": "Tax ID of the recipient"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "description": "Type of bank account"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "PHONE_DEPOSIT_VEN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankCode",
                      "destinationPhoneNumber",
                      "destinationTaxId",
                      "destinationBankAccountType",
                      "type"
                    ],
                    "description": "Venezuelan phone deposit details",
                    "title": "Phone Deposit VEN"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationIFSC": {
                        "type": "string",
                        "description": "IFSC code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_IN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Bank Deposit IN",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationIFSC": {
                        "type": "string",
                        "description": "IFSC code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "IMPS"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "IMPS",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationIFSC": {
                        "type": "string",
                        "description": "IFSC code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "THAI_QR"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Thai QR",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationIFSC": {
                        "type": "string",
                        "description": "IFSC code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "VIET_QR"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Viet QR",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationIFSC": {
                        "type": "string",
                        "description": "IFSC code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "GCASH"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "GCash",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Tax ID"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_PAYMENT_IN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "destinationTaxId",
                      "type"
                    ],
                    "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Mobile Payment IN",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "description": "Bank code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_VN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "destinationBankCode",
                      "type"
                    ],
                    "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Bank Deposit VN",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "bic": {
                        "type": "string",
                        "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "destinationAddress": {
                        "type": "string",
                        "description": "Address line 1 of the recipient"
                      },
                      "destinationCity": {
                        "type": "string",
                        "description": "Recipient city (defaults to Hong Kong)"
                      },
                      "accountHolderName": {
                        "type": "string",
                        "description": "Bank account holder name if different from payee"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_HK"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "bic",
                      "destinationBankName",
                      "destinationAddress",
                      "type"
                    ],
                    "description": "Hong Kong bank deposit details (HKD bank corridor)",
                    "title": "Bank Deposit HK"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "pattern": "^\\d+$",
                        "description": "CNAPS / bank institution code (numeric, variable length)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "destinationAddress": {
                        "type": "string",
                        "description": "Address line 1 of the recipient"
                      },
                      "destinationCity": {
                        "type": "string",
                        "description": "Recipient city"
                      },
                      "destinationState": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                      },
                      "destinationPostcode": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                      },
                      "destinationPhone": {
                        "type": "string",
                        "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                      },
                      "accountHolderName": {
                        "type": "string",
                        "description": "Bank account holder name if different from payee"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_CN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "destinationBankCode",
                      "destinationBankName",
                      "destinationAddress",
                      "destinationCity",
                      "destinationState",
                      "destinationPostcode",
                      "type"
                    ],
                    "description": "China mainland bank deposit details (CNY bank corridor)",
                    "title": "Bank Deposit CN"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_AR"
                        ]
                      },
                      "destinationCBU": {
                        "type": "string",
                        "description": "CBU — 22-digit bank account key (legacy, optional)"
                      },
                      "destinationCVU": {
                        "type": "string",
                        "description": "CVU — 22-digit virtual account key (legacy, optional)"
                      },
                      "destinationAlias": {
                        "type": "string",
                        "description": "Account alias (legacy, optional)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "description": "Document type of the recipient (legacy, optional)"
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Argentinian bank deposit details",
                    "title": "Bank Deposit AR"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Recipient bank name (required for Chilean bank payouts)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_CL"
                        ]
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "minLength": 1,
                        "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "description": "Document type of the recipient (legacy, optional)"
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "destinationBankName",
                      "type",
                      "destinationBankAccountType",
                      "destinationTaxId"
                    ],
                    "description": "Chilean bank deposit details",
                    "title": "Bank Deposit CL"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 30,
                        "description": "Recipient name (required, 2–30 characters)"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 11,
                        "description": "Bank account number (max 11 digits for Bolivian accounts)"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (unused for BOB — no network discovery)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "maxLength": 20,
                        "description": "Bank name (optional, max 20 characters)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_BO"
                        ]
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 15,
                        "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type",
                      "destinationTaxId"
                    ],
                    "description": "Bolivian bank deposit details",
                    "title": "Bank Deposit BO"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_PE"
                        ]
                      },
                      "destinationCCI": {
                        "type": "string",
                        "description": "CCI — 20-digit interbank account code (legacy, optional)"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "description": "Account type (corriente/ahorro) (legacy, optional)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "description": "Document type of the recipient (legacy, optional)"
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "destinationNetworkId",
                      "type"
                    ],
                    "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Bank Deposit PE",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "pattern": "^\\d{3}$",
                        "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                      },
                      "destinationBankAccountNumber": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 20,
                        "description": "Recipient bank account number (max 20)"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "enum": [
                          "CORRIENTE",
                          "AHORROS",
                          "PHONE"
                        ],
                        "description": "Bank account type"
                      },
                      "destinationCCI": {
                        "type": "string",
                        "pattern": "^\\d{1,20}$",
                        "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "enum": [
                          "CC",
                          "CE",
                          "RUC",
                          "PAS",
                          "PAR",
                          "LMI",
                          "OTHER"
                        ],
                        "description": "Recipient identification type"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 50,
                        "description": "Recipient identification number (max 50)"
                      },
                      "email": {
                        "type": "string",
                        "pattern": "^.+@.+\\..+$",
                        "description": "Recipient email (required for PEN payouts)"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "pattern": "^\\d{1,9}$",
                        "description": "Recipient phone number (required, max 9 digits)"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_PEN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankCode",
                      "destinationBankAccountNumber",
                      "destinationBankAccountType",
                      "destinationCCI",
                      "destinationDocumentType",
                      "destinationTaxId",
                      "email",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Peruvian bank deposit details (bank-code payout corridor).",
                    "title": "Bank Deposit PEN"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_NG"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Nigeria bank deposit details",
                    "title": "Bank Deposit NG"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_KE"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Kenya bank deposit details",
                    "title": "Bank Deposit KE"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_GH"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Bank Deposit GH",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_ZA"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "South Africa bank deposit details",
                    "title": "Bank Deposit ZA"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_TZ"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Tanzania bank deposit details",
                    "title": "Bank Deposit TZ"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_UG"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Uganda bank deposit details",
                    "title": "Bank Deposit UG"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_RW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Rwanda bank deposit details",
                    "title": "Bank Deposit RW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_MW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Malawi bank deposit details",
                    "title": "Bank Deposit MW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_ZM"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Zambia bank deposit details",
                    "title": "Bank Deposit ZM"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_BW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Botswana bank deposit details",
                    "title": "Bank Deposit BW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_CD"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Bank Deposit CD",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_XOF"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "West African CFA bank deposit details",
                    "title": "Bank Deposit XOF"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_XAF"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Central African CFA bank deposit details",
                    "title": "Bank Deposit XAF"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_NG"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Nigeria mobile money details",
                    "title": "Mobile Money NG"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_KE"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Kenya mobile money details",
                    "title": "Mobile Money KE"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_GH"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Mobile Money GH",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_ZA"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "South Africa mobile money details",
                    "title": "Mobile Money ZA"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_TZ"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Tanzania mobile money details",
                    "title": "Mobile Money TZ"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_UG"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Uganda mobile money details",
                    "title": "Mobile Money UG"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_RW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Rwanda mobile money details",
                    "title": "Mobile Money RW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_MW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Malawi mobile money details",
                    "title": "Mobile Money MW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_ZM"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Zambia mobile money details",
                    "title": "Mobile Money ZM"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_BW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Botswana mobile money details",
                    "title": "Mobile Money BW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_CD"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Mobile Money CD",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_XOF"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "West African CFA mobile money details",
                    "title": "Mobile Money XOF"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_XAF"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Central African CFA mobile money details",
                    "title": "Mobile Money XAF"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "description": "Bank code"
                      },
                      "destinationBankAccountNumber": {
                        "type": "string",
                        "description": "Bank account number (18-digit CLABE)"
                      },
                      "numericReference": {
                        "type": "string",
                        "description": "Numeric reference"
                      },
                      "notesReference": {
                        "type": "string",
                        "description": "Notes reference"
                      },
                      "destinationClabe": {
                        "type": "string",
                        "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_MX"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccountNumber",
                      "type"
                    ],
                    "description": "Mexican bank deposit details",
                    "title": "Bank Deposit MX"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPseNumber": {
                        "type": "string",
                        "description": "PSE number"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "PSE"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPseNumber",
                      "type"
                    ],
                    "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "PSE",
                    "deprecated": true
                  }
                ],
                "description": "The details required for the end user destination transfer method."
              },
              "status": {
                "anyOf": [
                  {
                    "type": "string",
                    "enum": [
                      "Pending",
                      "Processing",
                      "Success",
                      "Failed",
                      "Canceled",
                      "Reviewing"
                    ],
                    "description": "Common status values that are shared across all operation types",
                    "examples": [
                      "Pending",
                      "Processing",
                      "Success",
                      "Failed",
                      "Canceled",
                      "Reviewing"
                    ]
                  },
                  {
                    "type": "string",
                    "enum": [
                      "PendingCancel",
                      "PendingWithdrawal",
                      "PendingVerification",
                      "Pending2FA",
                      "Compliance",
                      "Accepted",
                      "Approved",
                      "Rejected",
                      "Review"
                    ]
                  }
                ],
                "description": "Status of the withdrawal",
                "examples": [
                  "Pending",
                  "Pending2FA",
                  "Compliance",
                  "Accepted",
                  "Approved",
                  "Success",
                  "Failed",
                  "Review",
                  "Rejected"
                ]
              },
              "withdrawalInfo": {
                "oneOf": [
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "BALANCE"
                        ]
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "Balance transfer details",
                    "title": "Balance"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "iban": {
                        "type": "string",
                        "description": "IBAN number"
                      },
                      "bic": {
                        "type": "string",
                        "description": "BIC number (optional)"
                      },
                      "country": {
                        "type": "string",
                        "description": "Country code"
                      },
                      "accountType": {
                        "type": "string",
                        "enum": [
                          "PERSONAL",
                          "BUSINESS"
                        ],
                        "default": "PERSONAL",
                        "description": "Account type (optional)"
                      },
                      "city": {
                        "type": "string",
                        "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                      },
                      "postalCode": {
                        "type": "string",
                        "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                      },
                      "address": {
                        "type": "string",
                        "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "SEPA"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "iban",
                      "country",
                      "type"
                    ],
                    "description": "SEPA transfer details",
                    "title": "SEPA"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "UK bank account number"
                      },
                      "sortCode": {
                        "type": "string",
                        "description": "UK sort code"
                      },
                      "country": {
                        "type": "string",
                        "enum": [
                          "GB"
                        ],
                        "default": "GB",
                        "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                      },
                      "accountType": {
                        "type": "string",
                        "enum": [
                          "PERSONAL",
                          "BUSINESS"
                        ],
                        "default": "PERSONAL",
                        "description": "Account type (optional)"
                      },
                      "city": {
                        "type": "string",
                        "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                      },
                      "postalCode": {
                        "type": "string",
                        "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                      },
                      "address": {
                        "type": "string",
                        "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "GBP_BANK_TRANSFER"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "accountNumber",
                      "sortCode",
                      "type"
                    ],
                    "description": "GBP domestic bank transfer details",
                    "title": "BankDepositGB"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "US bank account number"
                      },
                      "routingNumber": {
                        "type": "string",
                        "description": "US ABA routing number"
                      },
                      "country": {
                        "type": "string",
                        "enum": [
                          "US"
                        ],
                        "default": "US",
                        "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                      },
                      "accountType": {
                        "type": "string",
                        "enum": [
                          "PERSONAL",
                          "BUSINESS"
                        ],
                        "default": "PERSONAL",
                        "description": "Account type (optional)"
                      },
                      "bankAccountType": {
                        "type": "string",
                        "enum": [
                          "CHECKING",
                          "SAVINGS"
                        ],
                        "default": "CHECKING",
                        "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                      },
                      "city": {
                        "type": "string",
                        "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                      },
                      "postalCode": {
                        "type": "string",
                        "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                      },
                      "state": {
                        "type": "string",
                        "pattern": "^[A-Z]{2}$",
                        "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                      },
                      "address": {
                        "type": "string",
                        "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "ACH_US"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "accountNumber",
                      "routingNumber",
                      "state",
                      "type"
                    ],
                    "description": "USD ACH transfer details",
                    "title": "AchUS"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "linkedBankAccount"
                        ]
                      },
                      "accountLinkId": {
                        "type": "string",
                        "pattern": "^alnk_[0-9a-f]{24}$",
                        "description": "Identifier of one of the account holder own linked bank accounts",
                        "examples": [
                          "alnk_0123456789abcdef01234567"
                        ]
                      }
                    },
                    "required": [
                      "type",
                      "accountLinkId"
                    ],
                    "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                    "title": "LinkedBankAccount",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "ETH"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "ETH destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "ETH"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "MATIC"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "MATIC destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "MATIC"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "SOL"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "SOL destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "SOL"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "TRON"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "TRON destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "TRON"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "CELO"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "CELO destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "CELO"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "BTC"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "BTC destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "BTC"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "SOLANA"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "SOLANA destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "SOLANA"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "XRP"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "XRP destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "XRP"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "CARDANO"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "CARDANO destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "CARDANO"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "BSC"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "BSC destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "BSC"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "ARBITRUM"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "ARBITRUM destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "ARBITRUM"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "OPTIMISM"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "OPTIMISM destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "OPTIMISM"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "AVALANCHE"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "AVALANCHE destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "AVALANCHE"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "BASE"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "BASE destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "BASE"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_COL"
                        ]
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Recipient ID document number. Required when creating or updating a destination."
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                    "title": "Bank Deposit COL"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "brebKey": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Bre-B key (llave) that identifies the recipient account"
                      },
                      "email": {
                        "type": "string",
                        "description": "Recipient email (optional contact for the Bre-B rail)"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Recipient phone number (optional contact for the Bre-B rail)"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BRE_B_COP"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "brebKey",
                      "type"
                    ],
                    "description": "Colombian Bre-B payout details",
                    "title": "Bre-B COP"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "pattern": "^\\d{4}$",
                        "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                      },
                      "destinationBankAccountNumber": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Recipient bank account number"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Recipient ID document number"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "ACH_COP"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankCode",
                      "destinationBankAccountNumber",
                      "destinationBankAccountType",
                      "destinationDocumentType",
                      "destinationTaxId",
                      "type"
                    ],
                    "description": "Colombian ACH payout details",
                    "title": "ACH COP"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (unused for TWD — no network discovery)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "minLength": 2,
                        "description": "Bank name (required — TWD payouts run over SWIFT)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_TW"
                        ]
                      },
                      "destinationBankBranch": {
                        "type": "string",
                        "minLength": 2,
                        "description": "Bank branch (required — TWD payouts run over SWIFT)"
                      },
                      "bic": {
                        "type": "string",
                        "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                        "description": "SWIFT BIC code (required for TWD payouts)"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "description": "Type of bank account (legacy, optional)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Tax ID of the recipient (legacy, optional)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "description": "Document type of the recipient (legacy, optional)"
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "destinationBankName",
                      "type",
                      "destinationBankBranch",
                      "bic"
                    ],
                    "description": "Taiwan bank deposit details (SWIFT payout)",
                    "title": "Bank Deposit TW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "description": "Bank code"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationBankBranch": {
                        "type": "string",
                        "description": "Bank branch"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Tax ID of the recipient"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_BR"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankCode",
                      "destinationBankAccount",
                      "destinationBankBranch",
                      "destinationTaxId",
                      "type"
                    ],
                    "description": "Brazilian bank deposit details",
                    "title": "Bank Deposit BR"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPixCode": {
                        "type": "string",
                        "description": "PIX code"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Tax ID of the recipient"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "PIX_BR"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPixCode",
                      "destinationTaxId",
                      "type"
                    ],
                    "description": "Brazilian PIX details",
                    "title": "PIX BR"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccountNumber": {
                        "type": "string",
                        "description": "Bank account number"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Name of the bank"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                        "description": "Tax ID of the recipient"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "description": "Type of bank account"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_VEN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccountNumber",
                      "destinationBankName",
                      "destinationTaxId",
                      "destinationBankAccountType",
                      "type"
                    ],
                    "description": "Venezuelan bank deposit details",
                    "title": "Bank Deposit VEN"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "description": "Bank code"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                        "description": "Tax ID of the recipient"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "description": "Type of bank account"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "PHONE_DEPOSIT_VEN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankCode",
                      "destinationPhoneNumber",
                      "destinationTaxId",
                      "destinationBankAccountType",
                      "type"
                    ],
                    "description": "Venezuelan phone deposit details",
                    "title": "Phone Deposit VEN"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationIFSC": {
                        "type": "string",
                        "description": "IFSC code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_IN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Bank Deposit IN",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationIFSC": {
                        "type": "string",
                        "description": "IFSC code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "IMPS"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "IMPS",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationIFSC": {
                        "type": "string",
                        "description": "IFSC code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "THAI_QR"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Thai QR",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationIFSC": {
                        "type": "string",
                        "description": "IFSC code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "VIET_QR"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Viet QR",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationIFSC": {
                        "type": "string",
                        "description": "IFSC code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "GCASH"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "GCash",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Tax ID"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_PAYMENT_IN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "destinationTaxId",
                      "type"
                    ],
                    "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Mobile Payment IN",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "description": "Bank code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_VN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "destinationBankCode",
                      "type"
                    ],
                    "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Bank Deposit VN",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "bic": {
                        "type": "string",
                        "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "destinationAddress": {
                        "type": "string",
                        "description": "Address line 1 of the recipient"
                      },
                      "destinationCity": {
                        "type": "string",
                        "description": "Recipient city (defaults to Hong Kong)"
                      },
                      "accountHolderName": {
                        "type": "string",
                        "description": "Bank account holder name if different from payee"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_HK"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "bic",
                      "destinationBankName",
                      "destinationAddress",
                      "type"
                    ],
                    "description": "Hong Kong bank deposit details (HKD bank corridor)",
                    "title": "Bank Deposit HK"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "pattern": "^\\d+$",
                        "description": "CNAPS / bank institution code (numeric, variable length)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "destinationAddress": {
                        "type": "string",
                        "description": "Address line 1 of the recipient"
                      },
                      "destinationCity": {
                        "type": "string",
                        "description": "Recipient city"
                      },
                      "destinationState": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                      },
                      "destinationPostcode": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                      },
                      "destinationPhone": {
                        "type": "string",
                        "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                      },
                      "accountHolderName": {
                        "type": "string",
                        "description": "Bank account holder name if different from payee"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_CN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "destinationBankCode",
                      "destinationBankName",
                      "destinationAddress",
                      "destinationCity",
                      "destinationState",
                      "destinationPostcode",
                      "type"
                    ],
                    "description": "China mainland bank deposit details (CNY bank corridor)",
                    "title": "Bank Deposit CN"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_AR"
                        ]
                      },
                      "destinationCBU": {
                        "type": "string",
                        "description": "CBU — 22-digit bank account key (legacy, optional)"
                      },
                      "destinationCVU": {
                        "type": "string",
                        "description": "CVU — 22-digit virtual account key (legacy, optional)"
                      },
                      "destinationAlias": {
                        "type": "string",
                        "description": "Account alias (legacy, optional)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "description": "Document type of the recipient (legacy, optional)"
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Argentinian bank deposit details",
                    "title": "Bank Deposit AR"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Recipient bank name (required for Chilean bank payouts)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_CL"
                        ]
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "minLength": 1,
                        "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "description": "Document type of the recipient (legacy, optional)"
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "destinationBankName",
                      "type",
                      "destinationBankAccountType",
                      "destinationTaxId"
                    ],
                    "description": "Chilean bank deposit details",
                    "title": "Bank Deposit CL"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 30,
                        "description": "Recipient name (required, 2–30 characters)"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 11,
                        "description": "Bank account number (max 11 digits for Bolivian accounts)"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (unused for BOB — no network discovery)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "maxLength": 20,
                        "description": "Bank name (optional, max 20 characters)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_BO"
                        ]
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 15,
                        "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type",
                      "destinationTaxId"
                    ],
                    "description": "Bolivian bank deposit details",
                    "title": "Bank Deposit BO"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_PE"
                        ]
                      },
                      "destinationCCI": {
                        "type": "string",
                        "description": "CCI — 20-digit interbank account code (legacy, optional)"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "description": "Account type (corriente/ahorro) (legacy, optional)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "description": "Document type of the recipient (legacy, optional)"
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "destinationNetworkId",
                      "type"
                    ],
                    "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Bank Deposit PE",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "pattern": "^\\d{3}$",
                        "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                      },
                      "destinationBankAccountNumber": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 20,
                        "description": "Recipient bank account number (max 20)"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "enum": [
                          "CORRIENTE",
                          "AHORROS",
                          "PHONE"
                        ],
                        "description": "Bank account type"
                      },
                      "destinationCCI": {
                        "type": "string",
                        "pattern": "^\\d{1,20}$",
                        "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "enum": [
                          "CC",
                          "CE",
                          "RUC",
                          "PAS",
                          "PAR",
                          "LMI",
                          "OTHER"
                        ],
                        "description": "Recipient identification type"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 50,
                        "description": "Recipient identification number (max 50)"
                      },
                      "email": {
                        "type": "string",
                        "pattern": "^.+@.+\\..+$",
                        "description": "Recipient email (required for PEN payouts)"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "pattern": "^\\d{1,9}$",
                        "description": "Recipient phone number (required, max 9 digits)"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_PEN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankCode",
                      "destinationBankAccountNumber",
                      "destinationBankAccountType",
                      "destinationCCI",
                      "destinationDocumentType",
                      "destinationTaxId",
                      "email",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Peruvian bank deposit details (bank-code payout corridor).",
                    "title": "Bank Deposit PEN"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_NG"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Nigeria bank deposit details",
                    "title": "Bank Deposit NG"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_KE"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Kenya bank deposit details",
                    "title": "Bank Deposit KE"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_GH"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Bank Deposit GH",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_ZA"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "South Africa bank deposit details",
                    "title": "Bank Deposit ZA"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_TZ"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Tanzania bank deposit details",
                    "title": "Bank Deposit TZ"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_UG"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Uganda bank deposit details",
                    "title": "Bank Deposit UG"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_RW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Rwanda bank deposit details",
                    "title": "Bank Deposit RW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_MW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Malawi bank deposit details",
                    "title": "Bank Deposit MW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_ZM"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Zambia bank deposit details",
                    "title": "Bank Deposit ZM"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_BW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Botswana bank deposit details",
                    "title": "Bank Deposit BW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_CD"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Bank Deposit CD",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_XOF"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "West African CFA bank deposit details",
                    "title": "Bank Deposit XOF"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_XAF"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Central African CFA bank deposit details",
                    "title": "Bank Deposit XAF"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_NG"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Nigeria mobile money details",
                    "title": "Mobile Money NG"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_KE"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Kenya mobile money details",
                    "title": "Mobile Money KE"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_GH"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Mobile Money GH",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_ZA"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "South Africa mobile money details",
                    "title": "Mobile Money ZA"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_TZ"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Tanzania mobile money details",
                    "title": "Mobile Money TZ"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_UG"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Uganda mobile money details",
                    "title": "Mobile Money UG"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_RW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Rwanda mobile money details",
                    "title": "Mobile Money RW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_MW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Malawi mobile money details",
                    "title": "Mobile Money MW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_ZM"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Zambia mobile money details",
                    "title": "Mobile Money ZM"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_BW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Botswana mobile money details",
                    "title": "Mobile Money BW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_CD"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Mobile Money CD",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_XOF"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "West African CFA mobile money details",
                    "title": "Mobile Money XOF"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_XAF"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Central African CFA mobile money details",
                    "title": "Mobile Money XAF"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "description": "Bank code"
                      },
                      "destinationBankAccountNumber": {
                        "type": "string",
                        "description": "Bank account number (18-digit CLABE)"
                      },
                      "numericReference": {
                        "type": "string",
                        "description": "Numeric reference"
                      },
                      "notesReference": {
                        "type": "string",
                        "description": "Notes reference"
                      },
                      "destinationClabe": {
                        "type": "string",
                        "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_MX"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccountNumber",
                      "type"
                    ],
                    "description": "Mexican bank deposit details",
                    "title": "Bank Deposit MX"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPseNumber": {
                        "type": "string",
                        "description": "PSE number"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "PSE"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPseNumber",
                      "type"
                    ],
                    "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "PSE",
                    "deprecated": true
                  }
                ],
                "description": "Detailed withdrawal information",
                "title": "WithdrawalInfo"
              },
              "source": {
                "type": "string",
                "enum": [
                  "ui",
                  "apiApp",
                  "externalApi",
                  "internal"
                ],
                "description": "Source of withdrawal creation",
                "example": "externalApi"
              },
              "requires2FA": {
                "type": "boolean",
                "description": "Whether 2FA is required for this withdrawal",
                "example": false
              },
              "twoFactorToken": {
                "type": "string",
                "description": "2FA token for email approval",
                "example": "abc123"
              },
              "twoFactorApprovedAt": {
                "type": "number",
                "description": "Timestamp when 2FA was approved",
                "example": 1723027132
              },
              "errorCode": {
                "type": "string",
                "description": "Error code when status is Review",
                "example": "INSUFFICIENT_BALANCE"
              },
              "errorDetails": {
                "type": "string",
                "description": "Detailed error information",
                "example": "Insufficient balance for withdrawal"
              },
              "reviewedBy": {
                "type": "string",
                "description": "Admin email who reviewed the withdrawal",
                "example": "admin@example.com"
              },
              "reviewedAt": {
                "type": "number",
                "description": "Timestamp when review happened",
                "example": 1723027132
              }
            },
            "required": [
              "withdrawalId",
              "createdAt",
              "amount",
              "currency",
              "fee",
              "feeCurrency",
              "status"
            ],
            "description": "Details of the withdrawal associated with the order"
          },
          "createdAt": {
            "type": "number",
            "description": "Creation time of the order (timestamp)",
            "examples": [
              1723027132,
              1723027200,
              1723027300
            ]
          },
          "updatedAt": {
            "type": "number",
            "description": "Last update time of the order (timestamp)",
            "examples": [
              1723027132,
              1723027200,
              1723027300
            ]
          },
          "status": {
            "type": "string",
            "enum": [
              "Pending",
              "Processing",
              "Reviewing",
              "Success",
              "Failed",
              "Canceled"
            ],
            "description": "Current status of the order",
            "title": "OrderStatus",
            "examples": [
              "Pending",
              "Processing",
              "Reviewing",
              "Success",
              "Failed"
            ]
          },
          "externalReference": {
            "type": "string",
            "description": "External reference of the order, as you supplied it on create."
          },
          "externalRefeference": {
            "type": "string",
            "description": "Deprecated misspelling of `externalReference` — same value. Read `externalReference` instead; this key remains for backward compatibility and will be removed in a future major version.",
            "deprecated": true
          },
          "fee": {
            "type": "number",
            "minimum": 0,
            "description": "Total fee for the order once all the execution is completed",
            "examples": [
              6.37,
              8.5,
              10.25
            ]
          },
          "expectedFee": {
            "type": "number",
            "minimum": 0,
            "exclusiveMinimum": true,
            "description": "Expected fee given the initial deposit amount",
            "examples": [
              6.88,
              9.2,
              11.5
            ]
          },
          "expectedGasFee": {
            "type": "number",
            "description": "Expected gas fee if the withdrawal is with crypto",
            "examples": [
              6.88,
              8.5,
              10.25
            ]
          },
          "feeCurrency": {
            "type": "string",
            "description": "Currency of the fee",
            "examples": [
              "EUR",
              "USD",
              "GBP"
            ]
          }
        },
        "required": [
          "orderId",
          "createdAt",
          "status",
          "fee",
          "expectedFee",
          "feeCurrency"
        ],
        "description": "Response schema for getting details of a specific order"
      },
      "DeleteOrderRequest": {
        "type": "object",
        "properties": {
          "orderId": {
            "type": "string",
            "minLength": 12,
            "maxLength": 12,
            "pattern": "^[A-Z0-9]{12}$",
            "description": "ID of the order",
            "examples": [
              "01CLFXMT67II",
              "2R7E5Y5KFXP8",
              "4FWWRE3Y2URM"
            ]
          }
        },
        "required": [
          "orderId"
        ],
        "description": "Request schema for deleting a specific order"
      },
      "DeleteOrderResponse": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean",
            "description": "Whether the deletion was successful"
          },
          "message": {
            "type": "string",
            "description": "Success message"
          }
        },
        "required": [
          "success"
        ],
        "description": "Response schema for deleting a specific order"
      },
      "ListOrdersRequest": {
        "type": "object",
        "properties": {
          "currency": {
            "type": "string",
            "description": "Optional currency code to filter the items",
            "example": "EUR"
          },
          "minAmount": {
            "type": "number",
            "minimum": 0
          },
          "maxAmount": {
            "type": "number",
            "minimum": 0
          },
          "from": {
            "type": "integer",
            "minimum": 0
          },
          "to": {
            "type": "integer",
            "minimum": 0
          },
          "userEmail": {
            "type": "string",
            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
            "description": "Email of the user making the request. For a business payer this matches operations under any of its identities — the representative email and the organisation account — so listings stay complete across both.",
            "example": "user@example.com"
          },
          "search": {
            "type": "string",
            "description": "General search (e.g. email or text). When provided, backend may use it for userEmail or text search."
          },
          "limit": {
            "type": "number",
            "minimum": 0
          },
          "page": {
            "type": "number",
            "minimum": 0
          },
          "status": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "Pending",
                  "Processing",
                  "Success",
                  "Failed",
                  "Canceled",
                  "Reviewing"
                ],
                "description": "Common status values that are shared across all operation types",
                "examples": [
                  "Pending",
                  "Processing",
                  "Success",
                  "Failed",
                  "Canceled",
                  "Reviewing"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "Received",
                  "Exchanging",
                  "Exchanged",
                  "WithdrawProcessing",
                  "Withdrawn",
                  "OffRampProcessing",
                  "OffRamped",
                  "Deleted",
                  "PendingCancel",
                  "Closed",
                  "WaitingForFundsToExchange",
                  "WaitingForFundsToSend",
                  "WaitingForFundsToOffRamp",
                  "OffRampDocPending",
                  "OnRampDocPending",
                  "WaitingForConfirmations",
                  "PriceChanged",
                  "Refunded",
                  "PreparedToOffRamp",
                  "WithdrawOfframpProcessing",
                  "WaitingForFundsToSendOfframp",
                  "WaitingForPayoutSettlement",
                  "WithdrawPending",
                  "WithdrawPendingOfframp"
                ]
              },
              {
                "type": "array",
                "items": {
                  "anyOf": [
                    {
                      "type": "string",
                      "enum": [
                        "Pending",
                        "Processing",
                        "Success",
                        "Failed",
                        "Canceled",
                        "Reviewing"
                      ],
                      "description": "Common status values that are shared across all operation types",
                      "examples": [
                        "Pending",
                        "Processing",
                        "Success",
                        "Failed",
                        "Canceled",
                        "Reviewing"
                      ]
                    },
                    {
                      "type": "string",
                      "enum": [
                        "Received",
                        "Exchanging",
                        "Exchanged",
                        "WithdrawProcessing",
                        "Withdrawn",
                        "OffRampProcessing",
                        "OffRamped",
                        "Deleted",
                        "PendingCancel",
                        "Closed",
                        "WaitingForFundsToExchange",
                        "WaitingForFundsToSend",
                        "WaitingForFundsToOffRamp",
                        "OffRampDocPending",
                        "OnRampDocPending",
                        "WaitingForConfirmations",
                        "PriceChanged",
                        "Refunded",
                        "PreparedToOffRamp",
                        "WithdrawOfframpProcessing",
                        "WaitingForFundsToSendOfframp",
                        "WaitingForPayoutSettlement",
                        "WithdrawPending",
                        "WithdrawPendingOfframp"
                      ]
                    }
                  ],
                  "description": "Status vocabulary accepted by the order-list status filter",
                  "examples": [
                    "Pending",
                    "Success",
                    "Failed",
                    "Received",
                    "Exchanging",
                    "Withdrawn"
                  ]
                }
              }
            ],
            "description": "Optional status filter — a single status or an array of statuses. Use the statuses the API returns (Pending, Processing, Reviewing, Success, Failed, Canceled); the granular internal states are still accepted for backward compatibility.",
            "examples": [
              "Pending",
              [
                "Pending",
                "Success"
              ],
              [
                "Pending",
                "Processing",
                "Success"
              ],
              [
                "Success",
                "Failed",
                "Canceled"
              ]
            ]
          }
        },
        "additionalProperties": false,
        "description": "Request schema for listing orders with various filters"
      },
      "ListOrdersResponse": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "orderId": {
              "type": "string",
              "description": "ID of the order",
              "examples": [
                "01CLFXMT67II",
                "2R7E5Y5KFXP8",
                "4FWWRE3Y2URM"
              ]
            },
            "deposit": {
              "type": "object",
              "properties": {
                "depositId": {
                  "type": "string",
                  "minLength": 1,
                  "description": "ID of the deposit. Normally a 12-character internal id; deposits created before mid-2026 may carry a longer legacy id. Treat it as an opaque string."
                },
                "externalReference": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 128,
                  "description": "Your own reference for this deposit. Stored as-is and returned on create, detail and list, so you can look the deposit up by it after a network timeout instead of retrying blind. Not interpreted by VirtuaBroker and not shown to the payer — for the payer's transfer reference use depositInfo.referenceCode.",
                  "examples": [
                    "partner-ref-0001",
                    "inv_2026_00417"
                  ]
                },
                "userData": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "userType": {
                          "type": "string",
                          "enum": [
                            "individual"
                          ]
                        },
                        "firstName": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 50,
                          "description": "First name of the user making the deposit (or representative for business)",
                          "examples": [
                            "John",
                            "Alice",
                            "Bob"
                          ]
                        },
                        "lastName": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 100,
                          "description": "Last name of the user making the deposit (or representative for business)",
                          "examples": [
                            "Doe",
                            "Smith",
                            "Johnson"
                          ]
                        },
                        "userEmail": {
                          "type": "string",
                          "maxLength": 254,
                          "format": "email",
                          "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                          "description": "Email of the user making the deposit",
                          "examples": [
                            "user@virtuabroker.com",
                            "john.doe@example.com",
                            "alice@example.com"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "maxLength": 150,
                          "description": "Address of the user making the deposit",
                          "examples": [
                            "123 Main St, Anytown, ES",
                            "456 Elm St, Anytown, ES",
                            "789 Oak St, Anytown, ES"
                          ]
                        },
                        "taxDocumentType": {
                          "type": "string",
                          "maxLength": 50,
                          "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                          "examples": [
                            "CC",
                            "NIT",
                            "CE",
                            "NIF",
                            "Other"
                          ]
                        },
                        "taxId": {
                          "type": "string",
                          "maxLength": 30,
                          "description": "Tax ID of the user making the deposit",
                          "examples": [
                            "123-45-6789",
                            "987-65-4321",
                            "111-22-3333"
                          ]
                        },
                        "country": {
                          "type": "string",
                          "enum": [
                            "US",
                            "CA",
                            "GB",
                            "DE",
                            "FR",
                            "AU",
                            "JP",
                            "KR",
                            "SE",
                            "NO",
                            "DK",
                            "FI",
                            "NL",
                            "BE",
                            "CH",
                            "AT",
                            "NZ",
                            "SG",
                            "IE",
                            "LU",
                            "PT",
                            "ES",
                            "IT",
                            "GR",
                            "CZ",
                            "PL",
                            "HU",
                            "SK",
                            "SI",
                            "EE",
                            "LT",
                            "LV",
                            "IS",
                            "MT",
                            "CY",
                            "HR",
                            "RO",
                            "BG",
                            "BR",
                            "AR",
                            "CL",
                            "MX",
                            "CO",
                            "PE",
                            "PA",
                            "UY",
                            "BO",
                            "ZA",
                            "NG",
                            "KE",
                            "GH",
                            "TZ",
                            "UG",
                            "RW",
                            "MW",
                            "ZM",
                            "BW",
                            "CD",
                            "CI",
                            "CM",
                            "IL",
                            "AE",
                            "QA",
                            "SA",
                            "OM",
                            "KW",
                            "BH",
                            "MY",
                            "PH",
                            "TH",
                            "VN",
                            "ID",
                            "IN",
                            "LK",
                            "NP",
                            "BD",
                            "PK",
                            "EG",
                            "MA",
                            "DZ",
                            "TN",
                            "JO",
                            "LB",
                            "TR",
                            "KH",
                            "MM",
                            "LA",
                            "EN",
                            "BT",
                            "VE",
                            "TW",
                            "HK",
                            "CN"
                          ],
                          "description": "Country code of the user making the deposit",
                          "examples": [
                            "ES",
                            "US",
                            "GB"
                          ]
                        },
                        "state": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 100,
                          "description": "State of the user making the deposit",
                          "examples": [
                            "Madrid",
                            "New York",
                            "London"
                          ]
                        },
                        "postalCode": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 30,
                          "description": "Postal code of the user making the deposit",
                          "examples": [
                            "12345",
                            "67890",
                            "abcde"
                          ]
                        },
                        "city": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 100,
                          "description": "City of the user making the deposit",
                          "examples": [
                            "Madrid",
                            "New York",
                            "London"
                          ]
                        },
                        "dob": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 30,
                          "description": "Date of birth of the user making the deposit",
                          "examples": [
                            "1990-01-01",
                            "1995-05-15",
                            "1988-12-31"
                          ]
                        },
                        "phoneNumber": {
                          "type": "string",
                          "maxLength": 30,
                          "description": "Phone number of the user making the deposit",
                          "examples": [
                            "+447700900123",
                            "+447700900456",
                            "+447700900789"
                          ]
                        },
                        "kycId": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 300,
                          "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                          "examples": [
                            "kyc-12345",
                            "kyc-67890",
                            "kyc-abcde"
                          ]
                        },
                        "activity": {
                          "type": "string",
                          "description": "Activity of the user making the deposit",
                          "examples": [
                            "worker",
                            "business",
                            "student"
                          ]
                        }
                      },
                      "required": [
                        "userType",
                        "firstName",
                        "userEmail",
                        "country"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "userType": {
                          "type": "string",
                          "enum": [
                            "business"
                          ]
                        },
                        "businessName": {
                          "type": "string",
                          "maxLength": 150,
                          "description": "Business name (required when userType is business)",
                          "examples": [
                            "Acme Corp",
                            "Tech Solutions Inc",
                            "Global Services Ltd"
                          ]
                        },
                        "firstName": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 50,
                          "description": "First name of the user making the deposit (or representative for business)",
                          "examples": [
                            "John",
                            "Alice",
                            "Bob"
                          ]
                        },
                        "userEmail": {
                          "type": "string",
                          "maxLength": 254,
                          "format": "email",
                          "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                          "description": "Email of the user making the deposit",
                          "examples": [
                            "user@virtuabroker.com",
                            "john.doe@example.com",
                            "alice@example.com"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "maxLength": 150,
                          "description": "Address of the user making the deposit",
                          "examples": [
                            "123 Main St, Anytown, ES",
                            "456 Elm St, Anytown, ES",
                            "789 Oak St, Anytown, ES"
                          ]
                        },
                        "taxDocumentType": {
                          "type": "string",
                          "maxLength": 50,
                          "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                          "examples": [
                            "CC",
                            "NIT",
                            "CE",
                            "NIF",
                            "Other"
                          ]
                        },
                        "taxId": {
                          "type": "string",
                          "maxLength": 30,
                          "description": "Tax ID of the user making the deposit",
                          "examples": [
                            "123-45-6789",
                            "987-65-4321",
                            "111-22-3333"
                          ]
                        },
                        "country": {
                          "type": "string",
                          "enum": [
                            "US",
                            "CA",
                            "GB",
                            "DE",
                            "FR",
                            "AU",
                            "JP",
                            "KR",
                            "SE",
                            "NO",
                            "DK",
                            "FI",
                            "NL",
                            "BE",
                            "CH",
                            "AT",
                            "NZ",
                            "SG",
                            "IE",
                            "LU",
                            "PT",
                            "ES",
                            "IT",
                            "GR",
                            "CZ",
                            "PL",
                            "HU",
                            "SK",
                            "SI",
                            "EE",
                            "LT",
                            "LV",
                            "IS",
                            "MT",
                            "CY",
                            "HR",
                            "RO",
                            "BG",
                            "BR",
                            "AR",
                            "CL",
                            "MX",
                            "CO",
                            "PE",
                            "PA",
                            "UY",
                            "BO",
                            "ZA",
                            "NG",
                            "KE",
                            "GH",
                            "TZ",
                            "UG",
                            "RW",
                            "MW",
                            "ZM",
                            "BW",
                            "CD",
                            "CI",
                            "CM",
                            "IL",
                            "AE",
                            "QA",
                            "SA",
                            "OM",
                            "KW",
                            "BH",
                            "MY",
                            "PH",
                            "TH",
                            "VN",
                            "ID",
                            "IN",
                            "LK",
                            "NP",
                            "BD",
                            "PK",
                            "EG",
                            "MA",
                            "DZ",
                            "TN",
                            "JO",
                            "LB",
                            "TR",
                            "KH",
                            "MM",
                            "LA",
                            "EN",
                            "BT",
                            "VE",
                            "TW",
                            "HK",
                            "CN"
                          ],
                          "description": "Country code of the user making the deposit",
                          "examples": [
                            "ES",
                            "US",
                            "GB"
                          ]
                        },
                        "state": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 100,
                          "description": "State of the user making the deposit",
                          "examples": [
                            "Madrid",
                            "New York",
                            "London"
                          ]
                        },
                        "postalCode": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 30,
                          "description": "Postal code of the user making the deposit",
                          "examples": [
                            "12345",
                            "67890",
                            "abcde"
                          ]
                        },
                        "city": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 100,
                          "description": "City of the user making the deposit",
                          "examples": [
                            "Madrid",
                            "New York",
                            "London"
                          ]
                        },
                        "dob": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 30,
                          "description": "Date of birth of the user making the deposit",
                          "examples": [
                            "1990-01-01",
                            "1995-05-15",
                            "1988-12-31"
                          ]
                        },
                        "phoneNumber": {
                          "type": "string",
                          "maxLength": 30,
                          "description": "Phone number of the user making the deposit",
                          "examples": [
                            "+447700900123",
                            "+447700900456",
                            "+447700900789"
                          ]
                        },
                        "kycId": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 300,
                          "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                          "examples": [
                            "kyc-12345",
                            "kyc-67890",
                            "kyc-abcde"
                          ]
                        },
                        "activity": {
                          "type": "string",
                          "description": "Activity of the user making the deposit",
                          "examples": [
                            "worker",
                            "business",
                            "student"
                          ]
                        }
                      },
                      "required": [
                        "userType",
                        "businessName",
                        "firstName",
                        "userEmail",
                        "country"
                      ]
                    }
                  ],
                  "description": "User data of the person/company making the deposit",
                  "examples": [
                    {
                      "userType": "individual",
                      "firstName": "John",
                      "lastName": "Doe",
                      "userEmail": "user@virtuabroker.com",
                      "address": "123 Main St, Anytown, ES",
                      "taxId": "123-45-6789",
                      "country": "ES"
                    },
                    {
                      "userType": "individual",
                      "firstName": "Alice",
                      "lastName": "Smith",
                      "userEmail": "alice@example.com",
                      "address": "456 Elm St, Anytown, ES",
                      "taxId": "987-65-4321",
                      "country": "ES"
                    }
                  ]
                },
                "createdAt": {
                  "type": "number",
                  "description": "Creation time of the deposit",
                  "examples": [
                    1723027132,
                    1723027133,
                    1723027134
                  ]
                },
                "rail": {
                  "type": "string",
                  "enum": [
                    "BALANCE",
                    "SEPA",
                    "BTC",
                    "ETH",
                    "MATIC",
                    "POLYGON",
                    "CELO",
                    "TRON",
                    "SOLANA",
                    "ARBITRUM",
                    "OPTIMISM",
                    "AVALANCHE",
                    "BSC",
                    "BASE",
                    "XRP",
                    "PIX_BR",
                    "UPI",
                    "IMPS",
                    "TRY_BANK_TRANSFER",
                    "AED_BANK_TRANSFER",
                    "SPEI",
                    "IDR_BANK_TRANSFER",
                    "CREDIT_CARD",
                    "THAI_QR",
                    "VIET_QR",
                    "GCASH",
                    "ARGENTINA_BANK_TRANSFER",
                    "PSE",
                    "CLABE",
                    "PIX",
                    "BANK_DEPOSIT_COL",
                    "BANK_DEPOSIT_AR",
                    "BANK_DEPOSIT_CL",
                    "BANK_DEPOSIT_PE",
                    "BANK_DEPOSIT_BO",
                    "BANK_DEPOSIT_BR",
                    "BANK_DEPOSIT_NG",
                    "BANK_DEPOSIT_KE",
                    "BANK_DEPOSIT_GH",
                    "BANK_DEPOSIT_ZA",
                    "BANK_DEPOSIT_TZ",
                    "BANK_DEPOSIT_UG",
                    "BANK_DEPOSIT_RW",
                    "BANK_DEPOSIT_MW",
                    "BANK_DEPOSIT_ZM",
                    "BANK_DEPOSIT_BW",
                    "BANK_DEPOSIT_CD",
                    "BANK_DEPOSIT_XOF",
                    "BANK_DEPOSIT_XAF",
                    "MOBILE_MONEY_NG",
                    "MOBILE_MONEY_KE",
                    "MOBILE_MONEY_GH",
                    "MOBILE_MONEY_ZA",
                    "MOBILE_MONEY_TZ",
                    "MOBILE_MONEY_UG",
                    "MOBILE_MONEY_RW",
                    "MOBILE_MONEY_MW",
                    "MOBILE_MONEY_ZM",
                    "MOBILE_MONEY_BW",
                    "MOBILE_MONEY_CD",
                    "MOBILE_MONEY_XOF",
                    "MOBILE_MONEY_XAF",
                    "ACH_US",
                    "GBP_BANK_TRANSFER"
                  ],
                  "description": "Rail of the deposit"
                },
                "receivedAt": {
                  "type": "number",
                  "description": "Unix ms timestamp of when the funds for this deposit ARRIVED — recorded when the incoming payment is matched to the deposit, which is before it is credited. Present whenever funds have arrived, including a deposit whose funds are still held in review; omitted entirely when no funds ever arrived, so a never-funded or cancelled deposit has no value here and its presence is a reliable settlement signal for reconciliation. Identical on GET /v1/deposits and GET /v1/deposits/{depositId}. Note that the deposit object embedded in order and operation responses does not yet apply this rule — it returns the stored value. Not the creation time — use createdAt for that.",
                  "examples": [
                    1723027132000,
                    1723027133000,
                    1723027134000
                  ]
                },
                "expectedAmount": {
                  "type": "number",
                  "minimum": 0,
                  "description": "Amount expected of the deposit",
                  "examples": [
                    1000,
                    2000,
                    3000
                  ]
                },
                "amount": {
                  "type": "number",
                  "minimum": 0,
                  "description": "Amount received of the deposit",
                  "examples": [
                    1000,
                    2000,
                    3000
                  ]
                },
                "currency": {
                  "anyOf": [
                    {
                      "type": "string",
                      "enum": [
                        "EUR",
                        "USD",
                        "GBP",
                        "BRL",
                        "MXN",
                        "ARS",
                        "COP",
                        "PEN",
                        "NGN",
                        "KES",
                        "TZS",
                        "UGX",
                        "RWF",
                        "MWK",
                        "ZMW",
                        "XOF",
                        "XAF",
                        "BWP"
                      ]
                    },
                    {
                      "type": "string",
                      "enum": [
                        "USDC",
                        "USDT",
                        "CUSD",
                        "BTC",
                        "ETH",
                        "POL",
                        "SOL",
                        "TRX",
                        "AVAX",
                        "XRP",
                        "BNB"
                      ]
                    }
                  ],
                  "description": "Currency of the deposit",
                  "examples": [
                    "EUR",
                    "BRL"
                  ]
                },
                "fee": {
                  "type": "number",
                  "minimum": 0,
                  "description": "Fee for the deposit. This value is written once the deposit has been executed. Meanwhile it will appear 0.",
                  "example": 10
                },
                "expectedFee": {
                  "type": "number",
                  "minimum": 0,
                  "description": "Fee for the deposit. This value is correlated with the expected amount for the deposit.",
                  "examples": [
                    10,
                    20,
                    30
                  ]
                },
                "feeCurrency": {
                  "anyOf": [
                    {
                      "type": "string",
                      "enum": [
                        "EUR",
                        "USD",
                        "GBP",
                        "BRL",
                        "MXN",
                        "ARS",
                        "COP",
                        "PEN",
                        "NGN",
                        "KES",
                        "TZS",
                        "UGX",
                        "RWF",
                        "MWK",
                        "ZMW",
                        "XOF",
                        "XAF",
                        "BWP"
                      ]
                    },
                    {
                      "type": "string",
                      "enum": [
                        "USDC",
                        "USDT",
                        "CUSD",
                        "BTC",
                        "ETH",
                        "POL",
                        "SOL",
                        "TRX",
                        "AVAX",
                        "XRP",
                        "BNB"
                      ]
                    }
                  ],
                  "description": "Currency of the fee",
                  "examples": [
                    "EUR",
                    "BRL"
                  ]
                },
                "status": {
                  "anyOf": [
                    {
                      "type": "string",
                      "enum": [
                        "Pending",
                        "Processing",
                        "Success",
                        "Failed",
                        "Canceled",
                        "Reviewing"
                      ],
                      "description": "Common status values that are shared across all operation types",
                      "examples": [
                        "Pending",
                        "Processing",
                        "Success",
                        "Failed",
                        "Canceled",
                        "Reviewing"
                      ]
                    },
                    {
                      "type": "string",
                      "enum": [
                        "PendingCancel",
                        "Received"
                      ]
                    }
                  ],
                  "description": "Status of the deposit",
                  "examples": [
                    "Pending",
                    "Success",
                    "Failed",
                    "Received",
                    "PendingCancel"
                  ]
                },
                "depositInfo": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "accountHolder": {
                          "type": "string",
                          "description": "Name of the account holder",
                          "example": "John Doe"
                        },
                        "iban": {
                          "type": "string",
                          "description": "SEPA Bank Account Number",
                          "example": "DE8937XXXXXXXXXXXX3000"
                        },
                        "bic": {
                          "type": "string",
                          "description": "Bank BIC/SWIFT code",
                          "example": "DEUTDEFF"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Name of the bank",
                          "example": "Deutsche Bank"
                        },
                        "bankAddress": {
                          "type": "string",
                          "description": "Address of the bank",
                          "example": "Taunusanlage 12"
                        },
                        "bankCity": {
                          "type": "string",
                          "description": "City of the bank",
                          "example": "Frankfurt am Main"
                        },
                        "bankZipcode": {
                          "type": "string",
                          "description": "Zipcode of the bank",
                          "example": "60325"
                        },
                        "bankCountry": {
                          "type": "string",
                          "enum": [
                            "US",
                            "CA",
                            "GB",
                            "DE",
                            "FR",
                            "AU",
                            "JP",
                            "KR",
                            "SE",
                            "NO",
                            "DK",
                            "FI",
                            "NL",
                            "BE",
                            "CH",
                            "AT",
                            "NZ",
                            "SG",
                            "IE",
                            "LU",
                            "PT",
                            "ES",
                            "IT",
                            "GR",
                            "CZ",
                            "PL",
                            "HU",
                            "SK",
                            "SI",
                            "EE",
                            "LT",
                            "LV",
                            "IS",
                            "MT",
                            "CY",
                            "HR",
                            "RO",
                            "BG",
                            "BR",
                            "AR",
                            "CL",
                            "MX",
                            "CO",
                            "PE",
                            "PA",
                            "UY",
                            "BO",
                            "ZA",
                            "NG",
                            "KE",
                            "GH",
                            "TZ",
                            "UG",
                            "RW",
                            "MW",
                            "ZM",
                            "BW",
                            "CD",
                            "CI",
                            "CM",
                            "IL",
                            "AE",
                            "QA",
                            "SA",
                            "OM",
                            "KW",
                            "BH",
                            "MY",
                            "PH",
                            "TH",
                            "VN",
                            "ID",
                            "IN",
                            "LK",
                            "NP",
                            "BD",
                            "PK",
                            "EG",
                            "MA",
                            "DZ",
                            "TN",
                            "JO",
                            "LB",
                            "TR",
                            "KH",
                            "MM",
                            "LA",
                            "EN",
                            "BT",
                            "VE",
                            "TW",
                            "HK",
                            "CN"
                          ],
                          "description": "Country of the bank",
                          "example": "DE"
                        },
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "SEPA"
                          ]
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount. It can be 0 for open-amount bank transfers where the sender chooses the final amount from their bank.",
                          "example": 1000
                        },
                        "referenceCode": {
                          "type": "string",
                          "minLength": 1,
                          "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order. The user must include this code when making the deposit to ensure accurate processing. In cases where the reference code is incorrect or missing, we manually match orders based on the sender's name and other available details. In case the deposit is not matched, we will mark the order as Reviewing and the system will require manual attention.",
                          "example": "REF123456"
                        },
                        "extraDepositMethods": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "methodType": {
                                "type": "string",
                                "enum": [
                                  "HOSTED_CHECKOUT"
                                ],
                                "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                              },
                              "url": {
                                "type": "string",
                                "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                                "example": "https://checkout.example.com/pay/abc123"
                              },
                              "callbackUrl": {
                                "type": "string",
                                "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Payment reference for this method (equals the deposit/order reference)"
                              },
                              "amount": {
                                "type": "number",
                                "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                              },
                              "currency": {
                                "type": "string",
                                "description": "Currency of this method"
                              },
                              "expiresAt": {
                                "type": "number",
                                "description": "Unix ms after which `url` is no longer valid, when known"
                              }
                            },
                            "required": [
                              "methodType",
                              "url"
                            ],
                            "description": "An additional, optional way to pay this deposit"
                          },
                          "description": "Additional, optional ways to pay this same deposit (e.g. a hosted card page). The bank details above remain the primary method; ignore this field if you only support bank transfer."
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ],
                      "description": "Detailed information about a bank deposit, including the amount and a unique reference code for identification."
                    },
                    {
                      "type": "object",
                      "properties": {
                        "address": {
                          "type": "string",
                          "minLength": 1,
                          "description": "Crypto wallet address",
                          "example": "0x1A2b3C4d5E6f7890AbCdEf1234567890AbCdEf12"
                        },
                        "network": {
                          "type": "string",
                          "enum": [
                            "MATIC",
                            "ETH",
                            "CELO",
                            "TRON",
                            "BTC",
                            "SOLANA",
                            "XRP",
                            "CARDANO",
                            "BSC",
                            "ARBITRUM",
                            "OPTIMISM",
                            "AVALANCHE",
                            "BASE"
                          ],
                          "description": "Network for the deposit for crypto deposits",
                          "examples": [
                            "ETH",
                            "MATIC",
                            "CELO"
                          ]
                        },
                        "memo": {
                          "type": "string",
                          "description": "Optional memo for the transaction",
                          "example": "Payment for services"
                        },
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "CRYPTO"
                          ]
                        },
                        "qrCode": {
                          "type": "string",
                          "description": "Base64-encoded QR image for the deposit address",
                          "example": "iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAIAAADTED8xAAABpklEQVR42u3BAQ0AAADCoPdPbQ8HFAAAAAAAAAAAAAAAAAA..."
                        },
                        "qrCodeUrl": {
                          "type": "string",
                          "format": "uri",
                          "description": "7-day signed GCS URL of the QR code PNG"
                        },
                        "qrCodeExpiresAt": {
                          "type": "number",
                          "description": "Unix timestamp (ms) when qrCodeUrl expires"
                        },
                        "receivingAddress": {
                          "type": "string",
                          "description": "The wallet address where funds should be sent",
                          "example": "0xAbCdEf0123456789AbCdEf0123456789AbCdEf01"
                        },
                        "tokenContract": {
                          "type": "string",
                          "description": "The ERC20 token contract address",
                          "example": "0x765DE816845861e75A25fCA122bb6898B8B1282a"
                        },
                        "decimals": {
                          "type": "number",
                          "description": "Token decimals (default 18)",
                          "example": 18
                        }
                      },
                      "required": [
                        "address",
                        "network",
                        "depositType"
                      ],
                      "description": "Crypto Deposit Information"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "base64QRCode": {
                          "type": "string",
                          "minLength": 1,
                          "description": "Base64 encoded QR code",
                          "example": "base64QRCode"
                        },
                        "qrCodeString": {
                          "type": "string",
                          "minLength": 1,
                          "description": "The Pix copy-and-paste code (BR Code payload) the payer pastes into their bank app. Pass it through unchanged — it carries its own checksum.",
                          "example": "qrCodeString"
                        },
                        "referenceCode": {
                          "type": "string",
                          "minLength": 1,
                          "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order",
                          "example": "REF123456"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "exclusiveMinimum": true,
                          "description": "The monetary value to be deposited into the bank. This amount should be positive and accurately reflect the intended deposit.",
                          "example": 1000
                        },
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "PIX"
                          ]
                        }
                      },
                      "required": [
                        "base64QRCode",
                        "qrCodeString",
                        "referenceCode",
                        "amount",
                        "depositType"
                      ],
                      "description": "Pix Deposit Information"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "CREDIT_CARD"
                          ]
                        }
                      },
                      "required": [
                        "depositType"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "bankName": {
                          "type": "string",
                          "description": "Name of the bank (present when the rail provides it)"
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Name of the account holder (present when the rail provides it)"
                        },
                        "clabe": {
                          "type": "string",
                          "description": "CLABE number"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Bank account number (e.g. from the BANK_TRANSFER payment method)"
                        },
                        "reference": {
                          "type": "string",
                          "description": "Payment reference (e.g. from the BANK_TRANSFER payment method)"
                        },
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "CLABE"
                          ],
                          "description": "Type of the deposit"
                        }
                      },
                      "required": [
                        "clabe",
                        "depositType"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "url": {
                          "type": "string",
                          "description": "URL of the PSE payment"
                        },
                        "amountPrefilled": {
                          "type": "boolean",
                          "description": "Whether the payment page already carries the amount. When false or absent, the payer must enter it."
                        },
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "PSE"
                          ],
                          "description": "Type of the deposit"
                        }
                      },
                      "required": [
                        "url",
                        "depositType"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "BALANCE"
                          ]
                        }
                      },
                      "required": [
                        "depositType"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "PENDING"
                          ]
                        },
                        "currency": {
                          "type": "string",
                          "description": "Currency of the deposit"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the order/deposit"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount. It can be 0 while bank transfer details are open-amount or still being provisioned."
                        },
                        "extraDepositMethods": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "methodType": {
                                "type": "string",
                                "enum": [
                                  "HOSTED_CHECKOUT"
                                ],
                                "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                              },
                              "url": {
                                "type": "string",
                                "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                                "example": "https://checkout.example.com/pay/abc123"
                              },
                              "callbackUrl": {
                                "type": "string",
                                "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Payment reference for this method (equals the deposit/order reference)"
                              },
                              "amount": {
                                "type": "number",
                                "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                              },
                              "currency": {
                                "type": "string",
                                "description": "Currency of this method"
                              },
                              "expiresAt": {
                                "type": "number",
                                "description": "Unix ms after which `url` is no longer valid, when known"
                              }
                            },
                            "required": [
                              "methodType",
                              "url"
                            ],
                            "description": "An additional, optional way to pay this deposit"
                          },
                          "description": "Additional ways to pay while the bank details are being provisioned (e.g. a hosted card page). Optional — ignore it and wait for the bank details if you only support bank transfer."
                        },
                        "pendingReason": {
                          "type": "string",
                          "enum": [
                            "collection_account_activating",
                            "accountless_per_account_corridor"
                          ],
                          "description": "Why the instructions are still being provisioned, when the reason is known. `collection_account_activating` means the collection account for this payer is being activated and payable details are expected shortly. `accountless_per_account_corridor` means this corridor collects only into a collection account dedicated to the paying account, this request names no account, and none can be created for it — so payable details will NOT arrive by waiting; create the deposit against an account instead. Absence never conveys timing on either surface: here it means only that no reason is classifiable, and an account-level deposit-method instruction never carries the field at all. Treat the values as an open set and ignore any you do not recognise."
                        }
                      },
                      "required": [
                        "depositType",
                        "currency",
                        "referenceCode",
                        "amount"
                      ],
                      "description": "Deposit details are being provisioned; poll the order/deposit or wait for webhook"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "IMPS"
                          ]
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Name of the bank"
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Name of the account holder"
                        },
                        "ifsc": {
                          "type": "string",
                          "description": "ifsc number"
                        },
                        "type": {
                          "type": "string",
                          "description": "Type of the deposit"
                        },
                        "branch": {
                          "type": "string",
                          "description": "Branch of the bank"
                        },
                        "bank": {
                          "type": "string",
                          "description": "Bank of the account"
                        },
                        "otp": {
                          "type": "string",
                          "description": "OTP of the deposit"
                        },
                        "bankNotes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "number",
                                "description": "Type of note: -1 for warning, 1 for info"
                              },
                              "msg": {
                                "type": "string",
                                "description": "Message content"
                              }
                            },
                            "required": [
                              "type",
                              "msg"
                            ]
                          },
                          "description": "Additional bank instructions"
                        }
                      },
                      "required": [
                        "depositType",
                        "accountNumber",
                        "bankName",
                        "accountHolder",
                        "ifsc",
                        "type",
                        "branch",
                        "bank",
                        "otp"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "UPI"
                          ]
                        },
                        "vpa": {
                          "type": "string",
                          "description": "Virtual Payment Address"
                        },
                        "name": {
                          "type": "string",
                          "description": "Name of the account holder"
                        },
                        "otp": {
                          "type": "string",
                          "description": "OTP for the transaction"
                        },
                        "paymentLink": {
                          "type": "string",
                          "description": "Payment link"
                        },
                        "upiNotes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "number",
                                "description": "Type of note: -1 for warning, 1 for info"
                              },
                              "msg": {
                                "type": "string",
                                "description": "Message content"
                              }
                            },
                            "required": [
                              "type",
                              "msg"
                            ]
                          },
                          "description": "Additional UPI instructions"
                        }
                      },
                      "required": [
                        "depositType",
                        "vpa",
                        "name",
                        "otp",
                        "paymentLink"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "AED_BANK_TRANSFER"
                          ]
                        },
                        "iban": {
                          "type": "string",
                          "description": "International Bank Account Number"
                        },
                        "name": {
                          "type": "string",
                          "description": "Name of the account holder"
                        },
                        "bank": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "type": {
                          "type": "string",
                          "description": "Account type"
                        },
                        "address": {
                          "type": "string",
                          "description": "Bank address"
                        },
                        "email": {
                          "type": "string",
                          "description": "Contact email"
                        },
                        "phoneNumber": {
                          "type": "string",
                          "description": "Contact phone number"
                        },
                        "transferCode": {
                          "type": "string",
                          "description": "Transfer code"
                        },
                        "poBox": {
                          "type": "string",
                          "description": "P.O. Box"
                        },
                        "otp": {
                          "type": "string",
                          "description": "OTP for the transaction"
                        },
                        "bankNotes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "number",
                                "description": "Type of note: -1 for warning, 1 for info"
                              },
                              "msg": {
                                "type": "string",
                                "description": "Message content"
                              }
                            },
                            "required": [
                              "type",
                              "msg"
                            ]
                          },
                          "description": "Additional bank instructions"
                        }
                      },
                      "required": [
                        "depositType",
                        "iban",
                        "name",
                        "bank",
                        "type",
                        "address",
                        "email",
                        "phoneNumber",
                        "transferCode",
                        "poBox",
                        "otp"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "SPEI"
                          ]
                        },
                        "clabe": {
                          "type": "string",
                          "description": "CLABE number"
                        },
                        "name": {
                          "type": "string",
                          "description": "Name of the account holder"
                        },
                        "bank": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankNotes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "number",
                                "description": "Type of note: -1 for warning, 1 for info"
                              },
                              "msg": {
                                "type": "string",
                                "description": "Message content"
                              }
                            },
                            "required": [
                              "type",
                              "msg"
                            ]
                          },
                          "description": "Additional bank instructions"
                        }
                      },
                      "required": [
                        "depositType",
                        "clabe",
                        "name",
                        "bank"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "TRY_BANK_TRANSFER"
                          ]
                        },
                        "iban": {
                          "type": "string",
                          "description": "International Bank Account Number"
                        },
                        "name": {
                          "type": "string",
                          "description": "Name of the account holder"
                        },
                        "bank": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "otp": {
                          "type": "string",
                          "description": "OTP for the transaction"
                        },
                        "bankNotes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "number",
                                "description": "Type of note: -1 for warning, 1 for info"
                              },
                              "msg": {
                                "type": "string",
                                "description": "Message content"
                              }
                            },
                            "required": [
                              "type",
                              "msg"
                            ]
                          },
                          "description": "Additional bank instructions"
                        }
                      },
                      "required": [
                        "depositType",
                        "iban",
                        "name",
                        "bank",
                        "otp"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "IDR_BANK_TRANSFER"
                          ]
                        },
                        "virtualAccount": {
                          "type": "string",
                          "description": "Virtual account number"
                        },
                        "name": {
                          "type": "string",
                          "description": "Name of the account holder"
                        },
                        "bank": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankNotes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "number",
                                "description": "Type of note: -1 for warning, 1 for info"
                              },
                              "msg": {
                                "type": "string",
                                "description": "Message content"
                              }
                            },
                            "required": [
                              "type",
                              "msg"
                            ]
                          },
                          "description": "Additional bank instructions"
                        }
                      },
                      "required": [
                        "depositType",
                        "virtualAccount",
                        "name",
                        "bank"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "THAI_QR"
                          ]
                        },
                        "qrCode": {
                          "type": "string",
                          "description": "QR code"
                        },
                        "otp": {
                          "type": "string",
                          "description": "OTP for the transaction"
                        },
                        "bankNotes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "number",
                                "description": "Type of note: -1 for warning, 1 for info"
                              },
                              "msg": {
                                "type": "string",
                                "description": "Message content"
                              }
                            },
                            "required": [
                              "type",
                              "msg"
                            ]
                          },
                          "description": "Additional bank instructions"
                        }
                      },
                      "required": [
                        "depositType",
                        "qrCode",
                        "otp"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "VIET_QR"
                          ]
                        },
                        "qrCode": {
                          "type": "string",
                          "description": "QR code"
                        },
                        "otp": {
                          "type": "string",
                          "description": "OTP for the transaction"
                        },
                        "bankNotes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "number",
                                "description": "Type of note: -1 for warning, 1 for info"
                              },
                              "msg": {
                                "type": "string",
                                "description": "Message content"
                              }
                            },
                            "required": [
                              "type",
                              "msg"
                            ]
                          },
                          "description": "Additional bank instructions"
                        }
                      },
                      "required": [
                        "depositType",
                        "qrCode",
                        "otp"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "GCASH"
                          ]
                        },
                        "qrCode": {
                          "type": "string",
                          "description": "QR code"
                        },
                        "otp": {
                          "type": "string",
                          "description": "OTP for the transaction"
                        },
                        "bankNotes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "number",
                                "description": "Type of note: -1 for warning, 1 for info"
                              },
                              "msg": {
                                "type": "string",
                                "description": "Message content"
                              }
                            },
                            "required": [
                              "type",
                              "msg"
                            ]
                          },
                          "description": "Additional bank instructions"
                        }
                      },
                      "required": [
                        "depositType",
                        "qrCode",
                        "otp"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "ARGENTINA_BANK_TRANSFER"
                          ]
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Account number"
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "accountNumber"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "ACH_US"
                          ]
                        },
                        "routingNumber": {
                          "type": "string",
                          "description": "US bank ABA routing number"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "US bank account number"
                        },
                        "beneficiaryName": {
                          "type": "string",
                          "description": "Beneficiary name on the account"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Name of the bank"
                        },
                        "bankAddress": {
                          "type": "string",
                          "description": "Address of the bank"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names (e.g. ACH, Wire)"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount in USD"
                        },
                        "referenceCode": {
                          "type": "string",
                          "minLength": 1,
                          "description": "Reference code to include in the wire/ACH transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "routingNumber",
                        "accountNumber",
                        "beneficiaryName",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "ACH_PULL"
                          ]
                        }
                      },
                      "required": [
                        "depositType"
                      ],
                      "description": "Funds are pulled from the holder's own linked US bank account; no transfer instructions apply"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "LOCALBANK"
                          ],
                          "description": "Deprecated generic local-bank payin type. Superseded by the corridor-specific deposit types (e.g. SEPA, ACH_US, GBP_BANK_TRANSFER, CLABE/SPEI, PIX, ARGENTINA_BANK_TRANSFER, BANK_DEPOSIT_<CC>). Still returned on some corridors and on historical records, so integrators must continue to handle it. Discover the applicable per-currency method via GET /v1/currencies/{currency}/payin-schema.",
                          "deprecated": true
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "GBP_BANK_TRANSFER"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "UK bank account number"
                        },
                        "sortCode": {
                          "type": "string",
                          "description": "UK sort code"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Name of the bank"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names (e.g. Faster Payments, CHAPS, BACS)"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount in GBP"
                        },
                        "referenceCode": {
                          "type": "string",
                          "minLength": 1,
                          "description": "Reference code to include in the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "accountHolder",
                        "accountNumber",
                        "sortCode",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_COL"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_CL"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_BO"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_BR"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_NG"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_KE"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_GH"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_ZA"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_TZ"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_UG"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_RW"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_MW"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_ZM"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_BW"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_CD"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_XOF"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_XAF"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_NG"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_KE"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_GH"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_ZA"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_TZ"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_UG"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_RW"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_MW"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_ZM"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_BW"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_CD"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_XOF"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "depositType": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_XAF"
                          ]
                        },
                        "accountHolder": {
                          "type": "string",
                          "description": "Account holder name"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "Local bank account number"
                        },
                        "bankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "bankCountry": {
                          "type": "string",
                          "description": "ISO-3166 country code"
                        },
                        "routingCodes": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                              },
                              "value": {
                                "type": "string",
                                "description": "Routing code value"
                              }
                            },
                            "required": [
                              "type",
                              "value"
                            ]
                          },
                          "description": "Routing identifiers (e.g. sort code, routing number)"
                        },
                        "schemes": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Accepted payment scheme names for this account"
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Expected deposit amount"
                        },
                        "referenceCode": {
                          "type": "string",
                          "description": "Reference code for the transfer"
                        }
                      },
                      "required": [
                        "depositType",
                        "amount",
                        "referenceCode"
                      ]
                    }
                  ],
                  "description": "Details of the deposit",
                  "examples": [
                    {
                      "accountHolder": "John Doe",
                      "iban": "DE8937XXXXXXXXXXXX3000",
                      "bic": "COBADEFFXXX",
                      "bankName": "Commerzbank",
                      "bankAddress": "Mainzer Landstrasse 151-153",
                      "bankCity": "Frankfurt",
                      "bankZipcode": "60327",
                      "bankCountry": "DE",
                      "amount": 1000,
                      "referenceCode": "ABC123",
                      "depositType": "SEPA"
                    }
                  ]
                },
                "depositInfoPending": {
                  "type": "boolean",
                  "description": "True while the payment instructions are still being prepared. Poll this deposit until it is false (or absent) before showing the instructions to the payer."
                },
                "complianceHold": {
                  "type": "object",
                  "properties": {
                    "reason": {
                      "type": "string",
                      "enum": [
                        "screening",
                        "fiat_monitoring"
                      ],
                      "description": "Compliance hold reason"
                    }
                  },
                  "required": [
                    "reason"
                  ],
                  "description": "Present while the inbound transfer funding this deposit is held in provider compliance review. The deposit stays Reviewing (amount 0, never credited) until the hold clears (promote to Received) or the transfer is rejected/returned (terminalize)."
                }
              },
              "required": [
                "depositId",
                "createdAt",
                "expectedAmount",
                "amount",
                "currency",
                "fee",
                "expectedFee",
                "feeCurrency",
                "status",
                "depositInfo"
              ],
              "description": "Details of the deposit associated with the order"
            },
            "trade": {
              "type": "object",
              "properties": {
                "tradeId": {
                  "type": "string",
                  "description": "ID of the trade",
                  "example": "123e4567-e89b-12d3-a456-426614174000"
                },
                "createdAt": {
                  "type": "number",
                  "description": "Creation time of the trade",
                  "example": 1723027132
                },
                "pair": {
                  "type": "string",
                  "description": "Asset pair to trade",
                  "example": "BTC/EUR"
                },
                "tradeType": {
                  "type": "string",
                  "enum": [
                    "buy",
                    "sell"
                  ],
                  "description": "Type of trade"
                },
                "volume": {
                  "type": "number",
                  "minimum": 0,
                  "exclusiveMinimum": true,
                  "description": "Order quantity in lots",
                  "example": 0.5
                },
                "price": {
                  "type": "number",
                  "minimum": 0,
                  "exclusiveMinimum": true,
                  "description": "Price at which to place the order based on the pair",
                  "example": 30000
                },
                "conversionRate": {
                  "type": "number",
                  "minimum": 0,
                  "exclusiveMinimum": true,
                  "description": "Conversion rate at which to place the order based on the pair",
                  "example": 30000
                },
                "fee": {
                  "type": "number",
                  "minimum": 0,
                  "description": "Fee for the trade",
                  "example": 0.1
                },
                "feeCurrency": {
                  "type": "string",
                  "description": "Currency of the fee",
                  "example": "EUR"
                },
                "userEmail": {
                  "type": "string",
                  "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                  "description": "Email of the user making the trade",
                  "example": "user@example.com"
                }
              },
              "required": [
                "tradeId",
                "createdAt",
                "pair",
                "tradeType",
                "volume",
                "fee",
                "feeCurrency",
                "userEmail"
              ],
              "description": "Details of the trade associated with the order"
            },
            "withdraw": {
              "type": "object",
              "properties": {
                "withdrawalId": {
                  "anyOf": [
                    {
                      "type": "string",
                      "minLength": 12,
                      "maxLength": 12,
                      "pattern": "^[A-Z0-9]{12}$",
                      "examples": [
                        "01CLFXMT67II",
                        "2R7E5Y5KFXP8",
                        "4FWWRE3Y2URM"
                      ]
                    },
                    {
                      "type": "string",
                      "format": "uuid"
                    }
                  ],
                  "description": "ID of the withdrawal"
                },
                "userData": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "userType": {
                          "type": "string",
                          "enum": [
                            "individual"
                          ]
                        },
                        "firstName": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 50,
                          "description": "First name of the user making the deposit (or representative for business)",
                          "examples": [
                            "John",
                            "Alice",
                            "Bob"
                          ]
                        },
                        "lastName": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 100,
                          "description": "Last name of the user making the deposit (or representative for business)",
                          "examples": [
                            "Doe",
                            "Smith",
                            "Johnson"
                          ]
                        },
                        "userEmail": {
                          "type": "string",
                          "maxLength": 254,
                          "format": "email",
                          "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                          "description": "Email of the user making the deposit",
                          "examples": [
                            "user@virtuabroker.com",
                            "john.doe@example.com",
                            "alice@example.com"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "maxLength": 150,
                          "description": "Address of the user making the deposit",
                          "examples": [
                            "123 Main St, Anytown, ES",
                            "456 Elm St, Anytown, ES",
                            "789 Oak St, Anytown, ES"
                          ]
                        },
                        "taxDocumentType": {
                          "type": "string",
                          "maxLength": 50,
                          "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                          "examples": [
                            "CC",
                            "NIT",
                            "CE",
                            "NIF",
                            "Other"
                          ]
                        },
                        "taxId": {
                          "type": "string",
                          "maxLength": 30,
                          "description": "Tax ID of the user making the deposit",
                          "examples": [
                            "123-45-6789",
                            "987-65-4321",
                            "111-22-3333"
                          ]
                        },
                        "country": {
                          "type": "string",
                          "enum": [
                            "US",
                            "CA",
                            "GB",
                            "DE",
                            "FR",
                            "AU",
                            "JP",
                            "KR",
                            "SE",
                            "NO",
                            "DK",
                            "FI",
                            "NL",
                            "BE",
                            "CH",
                            "AT",
                            "NZ",
                            "SG",
                            "IE",
                            "LU",
                            "PT",
                            "ES",
                            "IT",
                            "GR",
                            "CZ",
                            "PL",
                            "HU",
                            "SK",
                            "SI",
                            "EE",
                            "LT",
                            "LV",
                            "IS",
                            "MT",
                            "CY",
                            "HR",
                            "RO",
                            "BG",
                            "BR",
                            "AR",
                            "CL",
                            "MX",
                            "CO",
                            "PE",
                            "PA",
                            "UY",
                            "BO",
                            "ZA",
                            "NG",
                            "KE",
                            "GH",
                            "TZ",
                            "UG",
                            "RW",
                            "MW",
                            "ZM",
                            "BW",
                            "CD",
                            "CI",
                            "CM",
                            "IL",
                            "AE",
                            "QA",
                            "SA",
                            "OM",
                            "KW",
                            "BH",
                            "MY",
                            "PH",
                            "TH",
                            "VN",
                            "ID",
                            "IN",
                            "LK",
                            "NP",
                            "BD",
                            "PK",
                            "EG",
                            "MA",
                            "DZ",
                            "TN",
                            "JO",
                            "LB",
                            "TR",
                            "KH",
                            "MM",
                            "LA",
                            "EN",
                            "BT",
                            "VE",
                            "TW",
                            "HK",
                            "CN"
                          ],
                          "description": "Country code of the user making the deposit",
                          "examples": [
                            "ES",
                            "US",
                            "GB"
                          ]
                        },
                        "state": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 100,
                          "description": "State of the user making the deposit",
                          "examples": [
                            "Madrid",
                            "New York",
                            "London"
                          ]
                        },
                        "postalCode": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 30,
                          "description": "Postal code of the user making the deposit",
                          "examples": [
                            "12345",
                            "67890",
                            "abcde"
                          ]
                        },
                        "city": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 100,
                          "description": "City of the user making the deposit",
                          "examples": [
                            "Madrid",
                            "New York",
                            "London"
                          ]
                        },
                        "dob": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 30,
                          "description": "Date of birth of the user making the deposit",
                          "examples": [
                            "1990-01-01",
                            "1995-05-15",
                            "1988-12-31"
                          ]
                        },
                        "phoneNumber": {
                          "type": "string",
                          "maxLength": 30,
                          "description": "Phone number of the user making the deposit",
                          "examples": [
                            "+447700900123",
                            "+447700900456",
                            "+447700900789"
                          ]
                        },
                        "kycId": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 300,
                          "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                          "examples": [
                            "kyc-12345",
                            "kyc-67890",
                            "kyc-abcde"
                          ]
                        },
                        "activity": {
                          "type": "string",
                          "description": "Activity of the user making the deposit",
                          "examples": [
                            "worker",
                            "business",
                            "student"
                          ]
                        }
                      },
                      "required": [
                        "userType",
                        "firstName",
                        "userEmail",
                        "country"
                      ]
                    },
                    {
                      "type": "object",
                      "properties": {
                        "userType": {
                          "type": "string",
                          "enum": [
                            "business"
                          ]
                        },
                        "businessName": {
                          "type": "string",
                          "maxLength": 150,
                          "description": "Business name (required when userType is business)",
                          "examples": [
                            "Acme Corp",
                            "Tech Solutions Inc",
                            "Global Services Ltd"
                          ]
                        },
                        "firstName": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 50,
                          "description": "First name of the user making the deposit (or representative for business)",
                          "examples": [
                            "John",
                            "Alice",
                            "Bob"
                          ]
                        },
                        "userEmail": {
                          "type": "string",
                          "maxLength": 254,
                          "format": "email",
                          "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                          "description": "Email of the user making the deposit",
                          "examples": [
                            "user@virtuabroker.com",
                            "john.doe@example.com",
                            "alice@example.com"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "maxLength": 150,
                          "description": "Address of the user making the deposit",
                          "examples": [
                            "123 Main St, Anytown, ES",
                            "456 Elm St, Anytown, ES",
                            "789 Oak St, Anytown, ES"
                          ]
                        },
                        "taxDocumentType": {
                          "type": "string",
                          "maxLength": 50,
                          "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                          "examples": [
                            "CC",
                            "NIT",
                            "CE",
                            "NIF",
                            "Other"
                          ]
                        },
                        "taxId": {
                          "type": "string",
                          "maxLength": 30,
                          "description": "Tax ID of the user making the deposit",
                          "examples": [
                            "123-45-6789",
                            "987-65-4321",
                            "111-22-3333"
                          ]
                        },
                        "country": {
                          "type": "string",
                          "enum": [
                            "US",
                            "CA",
                            "GB",
                            "DE",
                            "FR",
                            "AU",
                            "JP",
                            "KR",
                            "SE",
                            "NO",
                            "DK",
                            "FI",
                            "NL",
                            "BE",
                            "CH",
                            "AT",
                            "NZ",
                            "SG",
                            "IE",
                            "LU",
                            "PT",
                            "ES",
                            "IT",
                            "GR",
                            "CZ",
                            "PL",
                            "HU",
                            "SK",
                            "SI",
                            "EE",
                            "LT",
                            "LV",
                            "IS",
                            "MT",
                            "CY",
                            "HR",
                            "RO",
                            "BG",
                            "BR",
                            "AR",
                            "CL",
                            "MX",
                            "CO",
                            "PE",
                            "PA",
                            "UY",
                            "BO",
                            "ZA",
                            "NG",
                            "KE",
                            "GH",
                            "TZ",
                            "UG",
                            "RW",
                            "MW",
                            "ZM",
                            "BW",
                            "CD",
                            "CI",
                            "CM",
                            "IL",
                            "AE",
                            "QA",
                            "SA",
                            "OM",
                            "KW",
                            "BH",
                            "MY",
                            "PH",
                            "TH",
                            "VN",
                            "ID",
                            "IN",
                            "LK",
                            "NP",
                            "BD",
                            "PK",
                            "EG",
                            "MA",
                            "DZ",
                            "TN",
                            "JO",
                            "LB",
                            "TR",
                            "KH",
                            "MM",
                            "LA",
                            "EN",
                            "BT",
                            "VE",
                            "TW",
                            "HK",
                            "CN"
                          ],
                          "description": "Country code of the user making the deposit",
                          "examples": [
                            "ES",
                            "US",
                            "GB"
                          ]
                        },
                        "state": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 100,
                          "description": "State of the user making the deposit",
                          "examples": [
                            "Madrid",
                            "New York",
                            "London"
                          ]
                        },
                        "postalCode": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 30,
                          "description": "Postal code of the user making the deposit",
                          "examples": [
                            "12345",
                            "67890",
                            "abcde"
                          ]
                        },
                        "city": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 100,
                          "description": "City of the user making the deposit",
                          "examples": [
                            "Madrid",
                            "New York",
                            "London"
                          ]
                        },
                        "dob": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 30,
                          "description": "Date of birth of the user making the deposit",
                          "examples": [
                            "1990-01-01",
                            "1995-05-15",
                            "1988-12-31"
                          ]
                        },
                        "phoneNumber": {
                          "type": "string",
                          "maxLength": 30,
                          "description": "Phone number of the user making the deposit",
                          "examples": [
                            "+447700900123",
                            "+447700900456",
                            "+447700900789"
                          ]
                        },
                        "kycId": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 300,
                          "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                          "examples": [
                            "kyc-12345",
                            "kyc-67890",
                            "kyc-abcde"
                          ]
                        },
                        "activity": {
                          "type": "string",
                          "description": "Activity of the user making the deposit",
                          "examples": [
                            "worker",
                            "business",
                            "student"
                          ]
                        }
                      },
                      "required": [
                        "userType",
                        "businessName",
                        "firstName",
                        "userEmail",
                        "country"
                      ]
                    }
                  ],
                  "description": "User data for the withdrawal"
                },
                "createdAt": {
                  "type": "number",
                  "description": "Creation time of the withdrawal",
                  "example": 1723027132
                },
                "updatedAt": {
                  "type": "number",
                  "description": "Last update time of the withdrawal",
                  "example": 1723027132
                },
                "userEmail": {
                  "type": "string",
                  "format": "email",
                  "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                  "description": "Email of the user making the request",
                  "example": "user@example.com"
                },
                "amount": {
                  "type": "number",
                  "description": "Amount to be withdrawn. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
                  "example": 1000
                },
                "currency": {
                  "type": "string",
                  "description": "Currency of the withdrawal",
                  "example": "EUR"
                },
                "fee": {
                  "type": "number",
                  "description": "Fee for the withdrawal. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
                  "example": 10
                },
                "feeCurrency": {
                  "type": "string",
                  "description": "Currency of the fee",
                  "example": "EUR"
                },
                "destinationTransferData": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "BALANCE"
                          ]
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "Balance transfer details",
                      "title": "Balance"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "iban": {
                          "type": "string",
                          "description": "IBAN number"
                        },
                        "bic": {
                          "type": "string",
                          "description": "BIC number (optional)"
                        },
                        "country": {
                          "type": "string",
                          "description": "Country code"
                        },
                        "accountType": {
                          "type": "string",
                          "enum": [
                            "PERSONAL",
                            "BUSINESS"
                          ],
                          "default": "PERSONAL",
                          "description": "Account type (optional)"
                        },
                        "city": {
                          "type": "string",
                          "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                        },
                        "postalCode": {
                          "type": "string",
                          "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                        },
                        "address": {
                          "type": "string",
                          "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "SEPA"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "iban",
                        "country",
                        "type"
                      ],
                      "description": "SEPA transfer details",
                      "title": "SEPA"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "UK bank account number"
                        },
                        "sortCode": {
                          "type": "string",
                          "description": "UK sort code"
                        },
                        "country": {
                          "type": "string",
                          "enum": [
                            "GB"
                          ],
                          "default": "GB",
                          "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                        },
                        "accountType": {
                          "type": "string",
                          "enum": [
                            "PERSONAL",
                            "BUSINESS"
                          ],
                          "default": "PERSONAL",
                          "description": "Account type (optional)"
                        },
                        "city": {
                          "type": "string",
                          "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                        },
                        "postalCode": {
                          "type": "string",
                          "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                        },
                        "address": {
                          "type": "string",
                          "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "GBP_BANK_TRANSFER"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "accountNumber",
                        "sortCode",
                        "type"
                      ],
                      "description": "GBP domestic bank transfer details",
                      "title": "BankDepositGB"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "US bank account number"
                        },
                        "routingNumber": {
                          "type": "string",
                          "description": "US ABA routing number"
                        },
                        "country": {
                          "type": "string",
                          "enum": [
                            "US"
                          ],
                          "default": "US",
                          "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                        },
                        "accountType": {
                          "type": "string",
                          "enum": [
                            "PERSONAL",
                            "BUSINESS"
                          ],
                          "default": "PERSONAL",
                          "description": "Account type (optional)"
                        },
                        "bankAccountType": {
                          "type": "string",
                          "enum": [
                            "CHECKING",
                            "SAVINGS"
                          ],
                          "default": "CHECKING",
                          "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                        },
                        "city": {
                          "type": "string",
                          "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                        },
                        "postalCode": {
                          "type": "string",
                          "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                        },
                        "state": {
                          "type": "string",
                          "pattern": "^[A-Z]{2}$",
                          "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                        },
                        "address": {
                          "type": "string",
                          "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "ACH_US"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "accountNumber",
                        "routingNumber",
                        "state",
                        "type"
                      ],
                      "description": "USD ACH transfer details",
                      "title": "AchUS"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "linkedBankAccount"
                          ]
                        },
                        "accountLinkId": {
                          "type": "string",
                          "pattern": "^alnk_[0-9a-f]{24}$",
                          "description": "Identifier of one of the account holder own linked bank accounts",
                          "examples": [
                            "alnk_0123456789abcdef01234567"
                          ]
                        }
                      },
                      "required": [
                        "type",
                        "accountLinkId"
                      ],
                      "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                      "title": "LinkedBankAccount",
                      "deprecated": true
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "ETH"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                        },
                        "memo": {
                          "type": "string",
                          "description": "Memo for the wallet, when the chain uses one"
                        },
                        "txId": {
                          "type": "string",
                          "description": "Blockchain transaction ID"
                        },
                        "txUrlScan": {
                          "type": "string",
                          "description": "Blockchain explorer URL for the transaction"
                        },
                        "destinationWalletAddress": {
                          "type": "string",
                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                        },
                        "destinationWalletMemo": {
                          "type": "string",
                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                        },
                        "destinationNetwork": {
                          "type": "string",
                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                        },
                        "destinationCurrencySymbol": {
                          "type": "string",
                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "ETH destination details",
                      "anyOf": [
                        {
                          "required": [
                            "address"
                          ],
                          "properties": {
                            "address": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        },
                        {
                          "required": [
                            "destinationWalletAddress"
                          ],
                          "properties": {
                            "destinationWalletAddress": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        }
                      ],
                      "title": "ETH"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "MATIC"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                        },
                        "memo": {
                          "type": "string",
                          "description": "Memo for the wallet, when the chain uses one"
                        },
                        "txId": {
                          "type": "string",
                          "description": "Blockchain transaction ID"
                        },
                        "txUrlScan": {
                          "type": "string",
                          "description": "Blockchain explorer URL for the transaction"
                        },
                        "destinationWalletAddress": {
                          "type": "string",
                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                        },
                        "destinationWalletMemo": {
                          "type": "string",
                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                        },
                        "destinationNetwork": {
                          "type": "string",
                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                        },
                        "destinationCurrencySymbol": {
                          "type": "string",
                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "MATIC destination details",
                      "anyOf": [
                        {
                          "required": [
                            "address"
                          ],
                          "properties": {
                            "address": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        },
                        {
                          "required": [
                            "destinationWalletAddress"
                          ],
                          "properties": {
                            "destinationWalletAddress": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        }
                      ],
                      "title": "MATIC"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "SOL"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                        },
                        "memo": {
                          "type": "string",
                          "description": "Memo for the wallet, when the chain uses one"
                        },
                        "txId": {
                          "type": "string",
                          "description": "Blockchain transaction ID"
                        },
                        "txUrlScan": {
                          "type": "string",
                          "description": "Blockchain explorer URL for the transaction"
                        },
                        "destinationWalletAddress": {
                          "type": "string",
                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                        },
                        "destinationWalletMemo": {
                          "type": "string",
                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                        },
                        "destinationNetwork": {
                          "type": "string",
                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                        },
                        "destinationCurrencySymbol": {
                          "type": "string",
                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "SOL destination details",
                      "anyOf": [
                        {
                          "required": [
                            "address"
                          ],
                          "properties": {
                            "address": {
                              "pattern": "\\S"
                            }
                          }
                        },
                        {
                          "required": [
                            "destinationWalletAddress"
                          ],
                          "properties": {
                            "destinationWalletAddress": {
                              "pattern": "\\S"
                            }
                          }
                        }
                      ],
                      "title": "SOL"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "TRON"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                        },
                        "memo": {
                          "type": "string",
                          "description": "Memo for the wallet, when the chain uses one"
                        },
                        "txId": {
                          "type": "string",
                          "description": "Blockchain transaction ID"
                        },
                        "txUrlScan": {
                          "type": "string",
                          "description": "Blockchain explorer URL for the transaction"
                        },
                        "destinationWalletAddress": {
                          "type": "string",
                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                        },
                        "destinationWalletMemo": {
                          "type": "string",
                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                        },
                        "destinationNetwork": {
                          "type": "string",
                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                        },
                        "destinationCurrencySymbol": {
                          "type": "string",
                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "TRON destination details",
                      "anyOf": [
                        {
                          "required": [
                            "address"
                          ],
                          "properties": {
                            "address": {
                              "pattern": "\\S"
                            }
                          }
                        },
                        {
                          "required": [
                            "destinationWalletAddress"
                          ],
                          "properties": {
                            "destinationWalletAddress": {
                              "pattern": "\\S"
                            }
                          }
                        }
                      ],
                      "title": "TRON"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "CELO"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                        },
                        "memo": {
                          "type": "string",
                          "description": "Memo for the wallet, when the chain uses one"
                        },
                        "txId": {
                          "type": "string",
                          "description": "Blockchain transaction ID"
                        },
                        "txUrlScan": {
                          "type": "string",
                          "description": "Blockchain explorer URL for the transaction"
                        },
                        "destinationWalletAddress": {
                          "type": "string",
                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                        },
                        "destinationWalletMemo": {
                          "type": "string",
                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                        },
                        "destinationNetwork": {
                          "type": "string",
                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                        },
                        "destinationCurrencySymbol": {
                          "type": "string",
                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "CELO destination details",
                      "anyOf": [
                        {
                          "required": [
                            "address"
                          ],
                          "properties": {
                            "address": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        },
                        {
                          "required": [
                            "destinationWalletAddress"
                          ],
                          "properties": {
                            "destinationWalletAddress": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        }
                      ],
                      "title": "CELO"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "BTC"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                        },
                        "memo": {
                          "type": "string",
                          "description": "Memo for the wallet, when the chain uses one"
                        },
                        "txId": {
                          "type": "string",
                          "description": "Blockchain transaction ID"
                        },
                        "txUrlScan": {
                          "type": "string",
                          "description": "Blockchain explorer URL for the transaction"
                        },
                        "destinationWalletAddress": {
                          "type": "string",
                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                        },
                        "destinationWalletMemo": {
                          "type": "string",
                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                        },
                        "destinationNetwork": {
                          "type": "string",
                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                        },
                        "destinationCurrencySymbol": {
                          "type": "string",
                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "BTC destination details",
                      "anyOf": [
                        {
                          "required": [
                            "address"
                          ],
                          "properties": {
                            "address": {
                              "pattern": "\\S"
                            }
                          }
                        },
                        {
                          "required": [
                            "destinationWalletAddress"
                          ],
                          "properties": {
                            "destinationWalletAddress": {
                              "pattern": "\\S"
                            }
                          }
                        }
                      ],
                      "title": "BTC"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "SOLANA"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                        },
                        "memo": {
                          "type": "string",
                          "description": "Memo for the wallet, when the chain uses one"
                        },
                        "txId": {
                          "type": "string",
                          "description": "Blockchain transaction ID"
                        },
                        "txUrlScan": {
                          "type": "string",
                          "description": "Blockchain explorer URL for the transaction"
                        },
                        "destinationWalletAddress": {
                          "type": "string",
                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                        },
                        "destinationWalletMemo": {
                          "type": "string",
                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                        },
                        "destinationNetwork": {
                          "type": "string",
                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                        },
                        "destinationCurrencySymbol": {
                          "type": "string",
                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "SOLANA destination details",
                      "anyOf": [
                        {
                          "required": [
                            "address"
                          ],
                          "properties": {
                            "address": {
                              "pattern": "\\S"
                            }
                          }
                        },
                        {
                          "required": [
                            "destinationWalletAddress"
                          ],
                          "properties": {
                            "destinationWalletAddress": {
                              "pattern": "\\S"
                            }
                          }
                        }
                      ],
                      "title": "SOLANA"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "XRP"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                        },
                        "memo": {
                          "type": "string",
                          "description": "Memo for the wallet, when the chain uses one"
                        },
                        "txId": {
                          "type": "string",
                          "description": "Blockchain transaction ID"
                        },
                        "txUrlScan": {
                          "type": "string",
                          "description": "Blockchain explorer URL for the transaction"
                        },
                        "destinationWalletAddress": {
                          "type": "string",
                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                        },
                        "destinationWalletMemo": {
                          "type": "string",
                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                        },
                        "destinationNetwork": {
                          "type": "string",
                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                        },
                        "destinationCurrencySymbol": {
                          "type": "string",
                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "XRP destination details",
                      "anyOf": [
                        {
                          "required": [
                            "address"
                          ],
                          "properties": {
                            "address": {
                              "pattern": "\\S"
                            }
                          }
                        },
                        {
                          "required": [
                            "destinationWalletAddress"
                          ],
                          "properties": {
                            "destinationWalletAddress": {
                              "pattern": "\\S"
                            }
                          }
                        }
                      ],
                      "title": "XRP"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "CARDANO"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                        },
                        "memo": {
                          "type": "string",
                          "description": "Memo for the wallet, when the chain uses one"
                        },
                        "txId": {
                          "type": "string",
                          "description": "Blockchain transaction ID"
                        },
                        "txUrlScan": {
                          "type": "string",
                          "description": "Blockchain explorer URL for the transaction"
                        },
                        "destinationWalletAddress": {
                          "type": "string",
                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                        },
                        "destinationWalletMemo": {
                          "type": "string",
                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                        },
                        "destinationNetwork": {
                          "type": "string",
                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                        },
                        "destinationCurrencySymbol": {
                          "type": "string",
                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "CARDANO destination details",
                      "anyOf": [
                        {
                          "required": [
                            "address"
                          ],
                          "properties": {
                            "address": {
                              "pattern": "\\S"
                            }
                          }
                        },
                        {
                          "required": [
                            "destinationWalletAddress"
                          ],
                          "properties": {
                            "destinationWalletAddress": {
                              "pattern": "\\S"
                            }
                          }
                        }
                      ],
                      "title": "CARDANO"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "BSC"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                        },
                        "memo": {
                          "type": "string",
                          "description": "Memo for the wallet, when the chain uses one"
                        },
                        "txId": {
                          "type": "string",
                          "description": "Blockchain transaction ID"
                        },
                        "txUrlScan": {
                          "type": "string",
                          "description": "Blockchain explorer URL for the transaction"
                        },
                        "destinationWalletAddress": {
                          "type": "string",
                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                        },
                        "destinationWalletMemo": {
                          "type": "string",
                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                        },
                        "destinationNetwork": {
                          "type": "string",
                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                        },
                        "destinationCurrencySymbol": {
                          "type": "string",
                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "BSC destination details",
                      "anyOf": [
                        {
                          "required": [
                            "address"
                          ],
                          "properties": {
                            "address": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        },
                        {
                          "required": [
                            "destinationWalletAddress"
                          ],
                          "properties": {
                            "destinationWalletAddress": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        }
                      ],
                      "title": "BSC"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "ARBITRUM"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                        },
                        "memo": {
                          "type": "string",
                          "description": "Memo for the wallet, when the chain uses one"
                        },
                        "txId": {
                          "type": "string",
                          "description": "Blockchain transaction ID"
                        },
                        "txUrlScan": {
                          "type": "string",
                          "description": "Blockchain explorer URL for the transaction"
                        },
                        "destinationWalletAddress": {
                          "type": "string",
                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                        },
                        "destinationWalletMemo": {
                          "type": "string",
                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                        },
                        "destinationNetwork": {
                          "type": "string",
                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                        },
                        "destinationCurrencySymbol": {
                          "type": "string",
                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "ARBITRUM destination details",
                      "anyOf": [
                        {
                          "required": [
                            "address"
                          ],
                          "properties": {
                            "address": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        },
                        {
                          "required": [
                            "destinationWalletAddress"
                          ],
                          "properties": {
                            "destinationWalletAddress": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        }
                      ],
                      "title": "ARBITRUM"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "OPTIMISM"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                        },
                        "memo": {
                          "type": "string",
                          "description": "Memo for the wallet, when the chain uses one"
                        },
                        "txId": {
                          "type": "string",
                          "description": "Blockchain transaction ID"
                        },
                        "txUrlScan": {
                          "type": "string",
                          "description": "Blockchain explorer URL for the transaction"
                        },
                        "destinationWalletAddress": {
                          "type": "string",
                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                        },
                        "destinationWalletMemo": {
                          "type": "string",
                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                        },
                        "destinationNetwork": {
                          "type": "string",
                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                        },
                        "destinationCurrencySymbol": {
                          "type": "string",
                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "OPTIMISM destination details",
                      "anyOf": [
                        {
                          "required": [
                            "address"
                          ],
                          "properties": {
                            "address": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        },
                        {
                          "required": [
                            "destinationWalletAddress"
                          ],
                          "properties": {
                            "destinationWalletAddress": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        }
                      ],
                      "title": "OPTIMISM"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "AVALANCHE"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                        },
                        "memo": {
                          "type": "string",
                          "description": "Memo for the wallet, when the chain uses one"
                        },
                        "txId": {
                          "type": "string",
                          "description": "Blockchain transaction ID"
                        },
                        "txUrlScan": {
                          "type": "string",
                          "description": "Blockchain explorer URL for the transaction"
                        },
                        "destinationWalletAddress": {
                          "type": "string",
                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                        },
                        "destinationWalletMemo": {
                          "type": "string",
                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                        },
                        "destinationNetwork": {
                          "type": "string",
                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                        },
                        "destinationCurrencySymbol": {
                          "type": "string",
                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "AVALANCHE destination details",
                      "anyOf": [
                        {
                          "required": [
                            "address"
                          ],
                          "properties": {
                            "address": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        },
                        {
                          "required": [
                            "destinationWalletAddress"
                          ],
                          "properties": {
                            "destinationWalletAddress": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        }
                      ],
                      "title": "AVALANCHE"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "BASE"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                        },
                        "memo": {
                          "type": "string",
                          "description": "Memo for the wallet, when the chain uses one"
                        },
                        "txId": {
                          "type": "string",
                          "description": "Blockchain transaction ID"
                        },
                        "txUrlScan": {
                          "type": "string",
                          "description": "Blockchain explorer URL for the transaction"
                        },
                        "destinationWalletAddress": {
                          "type": "string",
                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                        },
                        "destinationWalletMemo": {
                          "type": "string",
                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                        },
                        "destinationNetwork": {
                          "type": "string",
                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                        },
                        "destinationCurrencySymbol": {
                          "type": "string",
                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "BASE destination details",
                      "anyOf": [
                        {
                          "required": [
                            "address"
                          ],
                          "properties": {
                            "address": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        },
                        {
                          "required": [
                            "destinationWalletAddress"
                          ],
                          "properties": {
                            "destinationWalletAddress": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        }
                      ],
                      "title": "BASE"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_COL"
                          ]
                        },
                        "destinationBankCode": {
                          "type": "string",
                          "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                        },
                        "destinationBankAccountType": {
                          "type": "string",
                          "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "description": "Recipient ID document number. Required when creating or updating a destination."
                        },
                        "destinationDocumentType": {
                          "type": "string",
                          "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                      "title": "Bank Deposit COL"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "brebKey": {
                          "type": "string",
                          "minLength": 1,
                          "description": "Bre-B key (llave) that identifies the recipient account"
                        },
                        "email": {
                          "type": "string",
                          "description": "Recipient email (optional contact for the Bre-B rail)"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Recipient phone number (optional contact for the Bre-B rail)"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BRE_B_COP"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "brebKey",
                        "type"
                      ],
                      "description": "Colombian Bre-B payout details",
                      "title": "Bre-B COP"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankCode": {
                          "type": "string",
                          "pattern": "^\\d{4}$",
                          "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                        },
                        "destinationBankAccountNumber": {
                          "type": "string",
                          "minLength": 1,
                          "description": "Recipient bank account number"
                        },
                        "destinationBankAccountType": {
                          "type": "string",
                          "minLength": 1,
                          "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                        },
                        "destinationDocumentType": {
                          "type": "string",
                          "minLength": 1,
                          "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "minLength": 1,
                          "description": "Recipient ID document number"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "ACH_COP"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankCode",
                        "destinationBankAccountNumber",
                        "destinationBankAccountType",
                        "destinationDocumentType",
                        "destinationTaxId",
                        "type"
                      ],
                      "description": "Colombian ACH payout details",
                      "title": "ACH COP"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (unused for TWD — no network discovery)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "minLength": 2,
                          "description": "Bank name (required — TWD payouts run over SWIFT)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_TW"
                          ]
                        },
                        "destinationBankBranch": {
                          "type": "string",
                          "minLength": 2,
                          "description": "Bank branch (required — TWD payouts run over SWIFT)"
                        },
                        "bic": {
                          "type": "string",
                          "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                          "description": "SWIFT BIC code (required for TWD payouts)"
                        },
                        "destinationBankAccountType": {
                          "type": "string",
                          "description": "Type of bank account (legacy, optional)"
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "description": "Tax ID of the recipient (legacy, optional)"
                        },
                        "destinationDocumentType": {
                          "type": "string",
                          "description": "Document type of the recipient (legacy, optional)"
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "destinationBankName",
                        "type",
                        "destinationBankBranch",
                        "bic"
                      ],
                      "description": "Taiwan bank deposit details (SWIFT payout)",
                      "title": "Bank Deposit TW"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankCode": {
                          "type": "string",
                          "description": "Bank code"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationBankBranch": {
                          "type": "string",
                          "description": "Bank branch"
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "description": "Tax ID of the recipient"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_BR"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankCode",
                        "destinationBankAccount",
                        "destinationBankBranch",
                        "destinationTaxId",
                        "type"
                      ],
                      "description": "Brazilian bank deposit details",
                      "title": "Bank Deposit BR"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPixCode": {
                          "type": "string",
                          "description": "PIX code"
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "description": "Tax ID of the recipient"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "PIX_BR"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPixCode",
                        "destinationTaxId",
                        "type"
                      ],
                      "description": "Brazilian PIX details",
                      "title": "PIX BR"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccountNumber": {
                          "type": "string",
                          "description": "Bank account number"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Name of the bank"
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                          "description": "Tax ID of the recipient"
                        },
                        "destinationBankAccountType": {
                          "type": "string",
                          "description": "Type of bank account"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_VEN"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccountNumber",
                        "destinationBankName",
                        "destinationTaxId",
                        "destinationBankAccountType",
                        "type"
                      ],
                      "description": "Venezuelan bank deposit details",
                      "title": "Bank Deposit VEN"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankCode": {
                          "type": "string",
                          "description": "Bank code"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                          "description": "Tax ID of the recipient"
                        },
                        "destinationBankAccountType": {
                          "type": "string",
                          "description": "Type of bank account"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "PHONE_DEPOSIT_VEN"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankCode",
                        "destinationPhoneNumber",
                        "destinationTaxId",
                        "destinationBankAccountType",
                        "type"
                      ],
                      "description": "Venezuelan phone deposit details",
                      "title": "Phone Deposit VEN"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationIFSC": {
                          "type": "string",
                          "description": "IFSC code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_IN"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                      "title": "Bank Deposit IN",
                      "deprecated": true
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationIFSC": {
                          "type": "string",
                          "description": "IFSC code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "IMPS"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                      "title": "IMPS",
                      "deprecated": true
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationIFSC": {
                          "type": "string",
                          "description": "IFSC code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "THAI_QR"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                      "title": "Thai QR",
                      "deprecated": true
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationIFSC": {
                          "type": "string",
                          "description": "IFSC code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "VIET_QR"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                      "title": "Viet QR",
                      "deprecated": true
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationIFSC": {
                          "type": "string",
                          "description": "IFSC code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "GCASH"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                      "title": "GCash",
                      "deprecated": true
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "description": "Tax ID"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "MOBILE_PAYMENT_IN"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPhoneNumber",
                        "destinationTaxId",
                        "type"
                      ],
                      "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                      "title": "Mobile Payment IN",
                      "deprecated": true
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationBankCode": {
                          "type": "string",
                          "description": "Bank code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_VN"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "destinationBankCode",
                        "type"
                      ],
                      "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                      "title": "Bank Deposit VN",
                      "deprecated": true
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "bic": {
                          "type": "string",
                          "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "destinationAddress": {
                          "type": "string",
                          "description": "Address line 1 of the recipient"
                        },
                        "destinationCity": {
                          "type": "string",
                          "description": "Recipient city (defaults to Hong Kong)"
                        },
                        "accountHolderName": {
                          "type": "string",
                          "description": "Bank account holder name if different from payee"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_HK"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "bic",
                        "destinationBankName",
                        "destinationAddress",
                        "type"
                      ],
                      "description": "Hong Kong bank deposit details (HKD bank corridor)",
                      "title": "Bank Deposit HK"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationBankCode": {
                          "type": "string",
                          "pattern": "^\\d+$",
                          "description": "CNAPS / bank institution code (numeric, variable length)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "destinationAddress": {
                          "type": "string",
                          "description": "Address line 1 of the recipient"
                        },
                        "destinationCity": {
                          "type": "string",
                          "description": "Recipient city"
                        },
                        "destinationState": {
                          "type": "string",
                          "minLength": 1,
                          "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                        },
                        "destinationPostcode": {
                          "type": "string",
                          "minLength": 1,
                          "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                        },
                        "destinationPhone": {
                          "type": "string",
                          "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                        },
                        "accountHolderName": {
                          "type": "string",
                          "description": "Bank account holder name if different from payee"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_CN"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "destinationBankCode",
                        "destinationBankName",
                        "destinationAddress",
                        "destinationCity",
                        "destinationState",
                        "destinationPostcode",
                        "type"
                      ],
                      "description": "China mainland bank deposit details (CNY bank corridor)",
                      "title": "Bank Deposit CN"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_AR"
                          ]
                        },
                        "destinationCBU": {
                          "type": "string",
                          "description": "CBU — 22-digit bank account key (legacy, optional)"
                        },
                        "destinationCVU": {
                          "type": "string",
                          "description": "CVU — 22-digit virtual account key (legacy, optional)"
                        },
                        "destinationAlias": {
                          "type": "string",
                          "description": "Account alias (legacy, optional)"
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                        },
                        "destinationDocumentType": {
                          "type": "string",
                          "description": "Document type of the recipient (legacy, optional)"
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Argentinian bank deposit details",
                      "title": "Bank Deposit AR"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationBankName is given)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "minLength": 1,
                          "description": "Recipient bank name (required for Chilean bank payouts)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_CL"
                          ]
                        },
                        "destinationBankAccountType": {
                          "type": "string",
                          "minLength": 1,
                          "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "minLength": 1,
                          "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                        },
                        "destinationDocumentType": {
                          "type": "string",
                          "description": "Document type of the recipient (legacy, optional)"
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "destinationBankName",
                        "type",
                        "destinationBankAccountType",
                        "destinationTaxId"
                      ],
                      "description": "Chilean bank deposit details",
                      "title": "Bank Deposit CL"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "minLength": 2,
                          "maxLength": 30,
                          "description": "Recipient name (required, 2–30 characters)"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 11,
                          "description": "Bank account number (max 11 digits for Bolivian accounts)"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (unused for BOB — no network discovery)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "maxLength": 20,
                          "description": "Bank name (optional, max 20 characters)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_BO"
                          ]
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 15,
                          "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type",
                        "destinationTaxId"
                      ],
                      "description": "Bolivian bank deposit details",
                      "title": "Bank Deposit BO"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_PE"
                          ]
                        },
                        "destinationCCI": {
                          "type": "string",
                          "description": "CCI — 20-digit interbank account code (legacy, optional)"
                        },
                        "destinationBankAccountType": {
                          "type": "string",
                          "description": "Account type (corriente/ahorro) (legacy, optional)"
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                        },
                        "destinationDocumentType": {
                          "type": "string",
                          "description": "Document type of the recipient (legacy, optional)"
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "destinationNetworkId",
                        "type"
                      ],
                      "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                      "title": "Bank Deposit PE",
                      "deprecated": true
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankCode": {
                          "type": "string",
                          "pattern": "^\\d{3}$",
                          "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                        },
                        "destinationBankAccountNumber": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 20,
                          "description": "Recipient bank account number (max 20)"
                        },
                        "destinationBankAccountType": {
                          "type": "string",
                          "enum": [
                            "CORRIENTE",
                            "AHORROS",
                            "PHONE"
                          ],
                          "description": "Bank account type"
                        },
                        "destinationCCI": {
                          "type": "string",
                          "pattern": "^\\d{1,20}$",
                          "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                        },
                        "destinationDocumentType": {
                          "type": "string",
                          "enum": [
                            "CC",
                            "CE",
                            "RUC",
                            "PAS",
                            "PAR",
                            "LMI",
                            "OTHER"
                          ],
                          "description": "Recipient identification type"
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 50,
                          "description": "Recipient identification number (max 50)"
                        },
                        "email": {
                          "type": "string",
                          "pattern": "^.+@.+\\..+$",
                          "description": "Recipient email (required for PEN payouts)"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "pattern": "^\\d{1,9}$",
                          "description": "Recipient phone number (required, max 9 digits)"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_PEN"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankCode",
                        "destinationBankAccountNumber",
                        "destinationBankAccountType",
                        "destinationCCI",
                        "destinationDocumentType",
                        "destinationTaxId",
                        "email",
                        "destinationPhoneNumber",
                        "type"
                      ],
                      "description": "Peruvian bank deposit details (bank-code payout corridor).",
                      "title": "Bank Deposit PEN"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationBankName is given)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_NG"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Nigeria bank deposit details",
                      "title": "Bank Deposit NG"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationBankName is given)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_KE"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Kenya bank deposit details",
                      "title": "Bank Deposit KE"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationBankName is given)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_GH"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                      "title": "Bank Deposit GH",
                      "deprecated": true
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationBankName is given)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_ZA"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "South Africa bank deposit details",
                      "title": "Bank Deposit ZA"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationBankName is given)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_TZ"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Tanzania bank deposit details",
                      "title": "Bank Deposit TZ"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationBankName is given)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_UG"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Uganda bank deposit details",
                      "title": "Bank Deposit UG"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationBankName is given)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_RW"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Rwanda bank deposit details",
                      "title": "Bank Deposit RW"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationBankName is given)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_MW"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Malawi bank deposit details",
                      "title": "Bank Deposit MW"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationBankName is given)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_ZM"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Zambia bank deposit details",
                      "title": "Bank Deposit ZM"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationBankName is given)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_BW"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Botswana bank deposit details",
                      "title": "Bank Deposit BW"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationBankName is given)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_CD"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                      "title": "Bank Deposit CD",
                      "deprecated": true
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationBankName is given)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_XOF"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "West African CFA bank deposit details",
                      "title": "Bank Deposit XOF"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationBankName is given)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_XAF"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Central African CFA bank deposit details",
                      "title": "Bank Deposit XAF"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationNetworkName is given)"
                        },
                        "destinationNetworkName": {
                          "type": "string",
                          "description": "Mobile money network name (resolves the network when id omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_NG"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPhoneNumber",
                        "type"
                      ],
                      "description": "Nigeria mobile money details",
                      "title": "Mobile Money NG"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationNetworkName is given)"
                        },
                        "destinationNetworkName": {
                          "type": "string",
                          "description": "Mobile money network name (resolves the network when id omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_KE"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPhoneNumber",
                        "type"
                      ],
                      "description": "Kenya mobile money details",
                      "title": "Mobile Money KE"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationNetworkName is given)"
                        },
                        "destinationNetworkName": {
                          "type": "string",
                          "description": "Mobile money network name (resolves the network when id omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_GH"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPhoneNumber",
                        "type"
                      ],
                      "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                      "title": "Mobile Money GH",
                      "deprecated": true
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationNetworkName is given)"
                        },
                        "destinationNetworkName": {
                          "type": "string",
                          "description": "Mobile money network name (resolves the network when id omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_ZA"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPhoneNumber",
                        "type"
                      ],
                      "description": "South Africa mobile money details",
                      "title": "Mobile Money ZA"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationNetworkName is given)"
                        },
                        "destinationNetworkName": {
                          "type": "string",
                          "description": "Mobile money network name (resolves the network when id omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_TZ"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPhoneNumber",
                        "type"
                      ],
                      "description": "Tanzania mobile money details",
                      "title": "Mobile Money TZ"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationNetworkName is given)"
                        },
                        "destinationNetworkName": {
                          "type": "string",
                          "description": "Mobile money network name (resolves the network when id omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_UG"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPhoneNumber",
                        "type"
                      ],
                      "description": "Uganda mobile money details",
                      "title": "Mobile Money UG"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationNetworkName is given)"
                        },
                        "destinationNetworkName": {
                          "type": "string",
                          "description": "Mobile money network name (resolves the network when id omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_RW"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPhoneNumber",
                        "type"
                      ],
                      "description": "Rwanda mobile money details",
                      "title": "Mobile Money RW"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationNetworkName is given)"
                        },
                        "destinationNetworkName": {
                          "type": "string",
                          "description": "Mobile money network name (resolves the network when id omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_MW"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPhoneNumber",
                        "type"
                      ],
                      "description": "Malawi mobile money details",
                      "title": "Mobile Money MW"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationNetworkName is given)"
                        },
                        "destinationNetworkName": {
                          "type": "string",
                          "description": "Mobile money network name (resolves the network when id omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_ZM"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPhoneNumber",
                        "type"
                      ],
                      "description": "Zambia mobile money details",
                      "title": "Mobile Money ZM"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationNetworkName is given)"
                        },
                        "destinationNetworkName": {
                          "type": "string",
                          "description": "Mobile money network name (resolves the network when id omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_BW"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPhoneNumber",
                        "type"
                      ],
                      "description": "Botswana mobile money details",
                      "title": "Mobile Money BW"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationNetworkName is given)"
                        },
                        "destinationNetworkName": {
                          "type": "string",
                          "description": "Mobile money network name (resolves the network when id omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_CD"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPhoneNumber",
                        "type"
                      ],
                      "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                      "title": "Mobile Money CD",
                      "deprecated": true
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationNetworkName is given)"
                        },
                        "destinationNetworkName": {
                          "type": "string",
                          "description": "Mobile money network name (resolves the network when id omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_XOF"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPhoneNumber",
                        "type"
                      ],
                      "description": "West African CFA mobile money details",
                      "title": "Mobile Money XOF"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationNetworkName is given)"
                        },
                        "destinationNetworkName": {
                          "type": "string",
                          "description": "Mobile money network name (resolves the network when id omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_XAF"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPhoneNumber",
                        "type"
                      ],
                      "description": "Central African CFA mobile money details",
                      "title": "Mobile Money XAF"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankCode": {
                          "type": "string",
                          "description": "Bank code"
                        },
                        "destinationBankAccountNumber": {
                          "type": "string",
                          "description": "Bank account number (18-digit CLABE)"
                        },
                        "numericReference": {
                          "type": "string",
                          "description": "Numeric reference"
                        },
                        "notesReference": {
                          "type": "string",
                          "description": "Notes reference"
                        },
                        "destinationClabe": {
                          "type": "string",
                          "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_MX"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccountNumber",
                        "type"
                      ],
                      "description": "Mexican bank deposit details",
                      "title": "Bank Deposit MX"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPseNumber": {
                          "type": "string",
                          "description": "PSE number"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "PSE"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPseNumber",
                        "type"
                      ],
                      "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                      "title": "PSE",
                      "deprecated": true
                    }
                  ],
                  "description": "The details required for the end user destination transfer method."
                },
                "status": {
                  "anyOf": [
                    {
                      "type": "string",
                      "enum": [
                        "Pending",
                        "Processing",
                        "Success",
                        "Failed",
                        "Canceled",
                        "Reviewing"
                      ],
                      "description": "Common status values that are shared across all operation types",
                      "examples": [
                        "Pending",
                        "Processing",
                        "Success",
                        "Failed",
                        "Canceled",
                        "Reviewing"
                      ]
                    },
                    {
                      "type": "string",
                      "enum": [
                        "PendingCancel",
                        "PendingWithdrawal",
                        "PendingVerification",
                        "Pending2FA",
                        "Compliance",
                        "Accepted",
                        "Approved",
                        "Rejected",
                        "Review"
                      ]
                    }
                  ],
                  "description": "Status of the withdrawal",
                  "examples": [
                    "Pending",
                    "Pending2FA",
                    "Compliance",
                    "Accepted",
                    "Approved",
                    "Success",
                    "Failed",
                    "Review",
                    "Rejected"
                  ]
                },
                "withdrawalInfo": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "BALANCE"
                          ]
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "Balance transfer details",
                      "title": "Balance"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "iban": {
                          "type": "string",
                          "description": "IBAN number"
                        },
                        "bic": {
                          "type": "string",
                          "description": "BIC number (optional)"
                        },
                        "country": {
                          "type": "string",
                          "description": "Country code"
                        },
                        "accountType": {
                          "type": "string",
                          "enum": [
                            "PERSONAL",
                            "BUSINESS"
                          ],
                          "default": "PERSONAL",
                          "description": "Account type (optional)"
                        },
                        "city": {
                          "type": "string",
                          "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                        },
                        "postalCode": {
                          "type": "string",
                          "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                        },
                        "address": {
                          "type": "string",
                          "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "SEPA"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "iban",
                        "country",
                        "type"
                      ],
                      "description": "SEPA transfer details",
                      "title": "SEPA"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "UK bank account number"
                        },
                        "sortCode": {
                          "type": "string",
                          "description": "UK sort code"
                        },
                        "country": {
                          "type": "string",
                          "enum": [
                            "GB"
                          ],
                          "default": "GB",
                          "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                        },
                        "accountType": {
                          "type": "string",
                          "enum": [
                            "PERSONAL",
                            "BUSINESS"
                          ],
                          "default": "PERSONAL",
                          "description": "Account type (optional)"
                        },
                        "city": {
                          "type": "string",
                          "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                        },
                        "postalCode": {
                          "type": "string",
                          "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                        },
                        "address": {
                          "type": "string",
                          "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "GBP_BANK_TRANSFER"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "accountNumber",
                        "sortCode",
                        "type"
                      ],
                      "description": "GBP domestic bank transfer details",
                      "title": "BankDepositGB"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "accountNumber": {
                          "type": "string",
                          "description": "US bank account number"
                        },
                        "routingNumber": {
                          "type": "string",
                          "description": "US ABA routing number"
                        },
                        "country": {
                          "type": "string",
                          "enum": [
                            "US"
                          ],
                          "default": "US",
                          "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                        },
                        "accountType": {
                          "type": "string",
                          "enum": [
                            "PERSONAL",
                            "BUSINESS"
                          ],
                          "default": "PERSONAL",
                          "description": "Account type (optional)"
                        },
                        "bankAccountType": {
                          "type": "string",
                          "enum": [
                            "CHECKING",
                            "SAVINGS"
                          ],
                          "default": "CHECKING",
                          "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                        },
                        "city": {
                          "type": "string",
                          "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                        },
                        "postalCode": {
                          "type": "string",
                          "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                        },
                        "state": {
                          "type": "string",
                          "pattern": "^[A-Z]{2}$",
                          "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                        },
                        "address": {
                          "type": "string",
                          "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "ACH_US"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "accountNumber",
                        "routingNumber",
                        "state",
                        "type"
                      ],
                      "description": "USD ACH transfer details",
                      "title": "AchUS"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "linkedBankAccount"
                          ]
                        },
                        "accountLinkId": {
                          "type": "string",
                          "pattern": "^alnk_[0-9a-f]{24}$",
                          "description": "Identifier of one of the account holder own linked bank accounts",
                          "examples": [
                            "alnk_0123456789abcdef01234567"
                          ]
                        }
                      },
                      "required": [
                        "type",
                        "accountLinkId"
                      ],
                      "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                      "title": "LinkedBankAccount",
                      "deprecated": true
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "ETH"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                        },
                        "memo": {
                          "type": "string",
                          "description": "Memo for the wallet, when the chain uses one"
                        },
                        "txId": {
                          "type": "string",
                          "description": "Blockchain transaction ID"
                        },
                        "txUrlScan": {
                          "type": "string",
                          "description": "Blockchain explorer URL for the transaction"
                        },
                        "destinationWalletAddress": {
                          "type": "string",
                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                        },
                        "destinationWalletMemo": {
                          "type": "string",
                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                        },
                        "destinationNetwork": {
                          "type": "string",
                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                        },
                        "destinationCurrencySymbol": {
                          "type": "string",
                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "ETH destination details",
                      "anyOf": [
                        {
                          "required": [
                            "address"
                          ],
                          "properties": {
                            "address": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        },
                        {
                          "required": [
                            "destinationWalletAddress"
                          ],
                          "properties": {
                            "destinationWalletAddress": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        }
                      ],
                      "title": "ETH"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "MATIC"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                        },
                        "memo": {
                          "type": "string",
                          "description": "Memo for the wallet, when the chain uses one"
                        },
                        "txId": {
                          "type": "string",
                          "description": "Blockchain transaction ID"
                        },
                        "txUrlScan": {
                          "type": "string",
                          "description": "Blockchain explorer URL for the transaction"
                        },
                        "destinationWalletAddress": {
                          "type": "string",
                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                        },
                        "destinationWalletMemo": {
                          "type": "string",
                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                        },
                        "destinationNetwork": {
                          "type": "string",
                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                        },
                        "destinationCurrencySymbol": {
                          "type": "string",
                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "MATIC destination details",
                      "anyOf": [
                        {
                          "required": [
                            "address"
                          ],
                          "properties": {
                            "address": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        },
                        {
                          "required": [
                            "destinationWalletAddress"
                          ],
                          "properties": {
                            "destinationWalletAddress": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        }
                      ],
                      "title": "MATIC"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "SOL"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                        },
                        "memo": {
                          "type": "string",
                          "description": "Memo for the wallet, when the chain uses one"
                        },
                        "txId": {
                          "type": "string",
                          "description": "Blockchain transaction ID"
                        },
                        "txUrlScan": {
                          "type": "string",
                          "description": "Blockchain explorer URL for the transaction"
                        },
                        "destinationWalletAddress": {
                          "type": "string",
                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                        },
                        "destinationWalletMemo": {
                          "type": "string",
                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                        },
                        "destinationNetwork": {
                          "type": "string",
                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                        },
                        "destinationCurrencySymbol": {
                          "type": "string",
                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "SOL destination details",
                      "anyOf": [
                        {
                          "required": [
                            "address"
                          ],
                          "properties": {
                            "address": {
                              "pattern": "\\S"
                            }
                          }
                        },
                        {
                          "required": [
                            "destinationWalletAddress"
                          ],
                          "properties": {
                            "destinationWalletAddress": {
                              "pattern": "\\S"
                            }
                          }
                        }
                      ],
                      "title": "SOL"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "TRON"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                        },
                        "memo": {
                          "type": "string",
                          "description": "Memo for the wallet, when the chain uses one"
                        },
                        "txId": {
                          "type": "string",
                          "description": "Blockchain transaction ID"
                        },
                        "txUrlScan": {
                          "type": "string",
                          "description": "Blockchain explorer URL for the transaction"
                        },
                        "destinationWalletAddress": {
                          "type": "string",
                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                        },
                        "destinationWalletMemo": {
                          "type": "string",
                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                        },
                        "destinationNetwork": {
                          "type": "string",
                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                        },
                        "destinationCurrencySymbol": {
                          "type": "string",
                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "TRON destination details",
                      "anyOf": [
                        {
                          "required": [
                            "address"
                          ],
                          "properties": {
                            "address": {
                              "pattern": "\\S"
                            }
                          }
                        },
                        {
                          "required": [
                            "destinationWalletAddress"
                          ],
                          "properties": {
                            "destinationWalletAddress": {
                              "pattern": "\\S"
                            }
                          }
                        }
                      ],
                      "title": "TRON"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "CELO"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                        },
                        "memo": {
                          "type": "string",
                          "description": "Memo for the wallet, when the chain uses one"
                        },
                        "txId": {
                          "type": "string",
                          "description": "Blockchain transaction ID"
                        },
                        "txUrlScan": {
                          "type": "string",
                          "description": "Blockchain explorer URL for the transaction"
                        },
                        "destinationWalletAddress": {
                          "type": "string",
                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                        },
                        "destinationWalletMemo": {
                          "type": "string",
                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                        },
                        "destinationNetwork": {
                          "type": "string",
                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                        },
                        "destinationCurrencySymbol": {
                          "type": "string",
                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "CELO destination details",
                      "anyOf": [
                        {
                          "required": [
                            "address"
                          ],
                          "properties": {
                            "address": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        },
                        {
                          "required": [
                            "destinationWalletAddress"
                          ],
                          "properties": {
                            "destinationWalletAddress": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        }
                      ],
                      "title": "CELO"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "BTC"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                        },
                        "memo": {
                          "type": "string",
                          "description": "Memo for the wallet, when the chain uses one"
                        },
                        "txId": {
                          "type": "string",
                          "description": "Blockchain transaction ID"
                        },
                        "txUrlScan": {
                          "type": "string",
                          "description": "Blockchain explorer URL for the transaction"
                        },
                        "destinationWalletAddress": {
                          "type": "string",
                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                        },
                        "destinationWalletMemo": {
                          "type": "string",
                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                        },
                        "destinationNetwork": {
                          "type": "string",
                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                        },
                        "destinationCurrencySymbol": {
                          "type": "string",
                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "BTC destination details",
                      "anyOf": [
                        {
                          "required": [
                            "address"
                          ],
                          "properties": {
                            "address": {
                              "pattern": "\\S"
                            }
                          }
                        },
                        {
                          "required": [
                            "destinationWalletAddress"
                          ],
                          "properties": {
                            "destinationWalletAddress": {
                              "pattern": "\\S"
                            }
                          }
                        }
                      ],
                      "title": "BTC"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "SOLANA"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                        },
                        "memo": {
                          "type": "string",
                          "description": "Memo for the wallet, when the chain uses one"
                        },
                        "txId": {
                          "type": "string",
                          "description": "Blockchain transaction ID"
                        },
                        "txUrlScan": {
                          "type": "string",
                          "description": "Blockchain explorer URL for the transaction"
                        },
                        "destinationWalletAddress": {
                          "type": "string",
                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                        },
                        "destinationWalletMemo": {
                          "type": "string",
                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                        },
                        "destinationNetwork": {
                          "type": "string",
                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                        },
                        "destinationCurrencySymbol": {
                          "type": "string",
                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "SOLANA destination details",
                      "anyOf": [
                        {
                          "required": [
                            "address"
                          ],
                          "properties": {
                            "address": {
                              "pattern": "\\S"
                            }
                          }
                        },
                        {
                          "required": [
                            "destinationWalletAddress"
                          ],
                          "properties": {
                            "destinationWalletAddress": {
                              "pattern": "\\S"
                            }
                          }
                        }
                      ],
                      "title": "SOLANA"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "XRP"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                        },
                        "memo": {
                          "type": "string",
                          "description": "Memo for the wallet, when the chain uses one"
                        },
                        "txId": {
                          "type": "string",
                          "description": "Blockchain transaction ID"
                        },
                        "txUrlScan": {
                          "type": "string",
                          "description": "Blockchain explorer URL for the transaction"
                        },
                        "destinationWalletAddress": {
                          "type": "string",
                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                        },
                        "destinationWalletMemo": {
                          "type": "string",
                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                        },
                        "destinationNetwork": {
                          "type": "string",
                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                        },
                        "destinationCurrencySymbol": {
                          "type": "string",
                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "XRP destination details",
                      "anyOf": [
                        {
                          "required": [
                            "address"
                          ],
                          "properties": {
                            "address": {
                              "pattern": "\\S"
                            }
                          }
                        },
                        {
                          "required": [
                            "destinationWalletAddress"
                          ],
                          "properties": {
                            "destinationWalletAddress": {
                              "pattern": "\\S"
                            }
                          }
                        }
                      ],
                      "title": "XRP"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "CARDANO"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                        },
                        "memo": {
                          "type": "string",
                          "description": "Memo for the wallet, when the chain uses one"
                        },
                        "txId": {
                          "type": "string",
                          "description": "Blockchain transaction ID"
                        },
                        "txUrlScan": {
                          "type": "string",
                          "description": "Blockchain explorer URL for the transaction"
                        },
                        "destinationWalletAddress": {
                          "type": "string",
                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                        },
                        "destinationWalletMemo": {
                          "type": "string",
                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                        },
                        "destinationNetwork": {
                          "type": "string",
                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                        },
                        "destinationCurrencySymbol": {
                          "type": "string",
                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "CARDANO destination details",
                      "anyOf": [
                        {
                          "required": [
                            "address"
                          ],
                          "properties": {
                            "address": {
                              "pattern": "\\S"
                            }
                          }
                        },
                        {
                          "required": [
                            "destinationWalletAddress"
                          ],
                          "properties": {
                            "destinationWalletAddress": {
                              "pattern": "\\S"
                            }
                          }
                        }
                      ],
                      "title": "CARDANO"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "BSC"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                        },
                        "memo": {
                          "type": "string",
                          "description": "Memo for the wallet, when the chain uses one"
                        },
                        "txId": {
                          "type": "string",
                          "description": "Blockchain transaction ID"
                        },
                        "txUrlScan": {
                          "type": "string",
                          "description": "Blockchain explorer URL for the transaction"
                        },
                        "destinationWalletAddress": {
                          "type": "string",
                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                        },
                        "destinationWalletMemo": {
                          "type": "string",
                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                        },
                        "destinationNetwork": {
                          "type": "string",
                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                        },
                        "destinationCurrencySymbol": {
                          "type": "string",
                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "BSC destination details",
                      "anyOf": [
                        {
                          "required": [
                            "address"
                          ],
                          "properties": {
                            "address": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        },
                        {
                          "required": [
                            "destinationWalletAddress"
                          ],
                          "properties": {
                            "destinationWalletAddress": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        }
                      ],
                      "title": "BSC"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "ARBITRUM"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                        },
                        "memo": {
                          "type": "string",
                          "description": "Memo for the wallet, when the chain uses one"
                        },
                        "txId": {
                          "type": "string",
                          "description": "Blockchain transaction ID"
                        },
                        "txUrlScan": {
                          "type": "string",
                          "description": "Blockchain explorer URL for the transaction"
                        },
                        "destinationWalletAddress": {
                          "type": "string",
                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                        },
                        "destinationWalletMemo": {
                          "type": "string",
                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                        },
                        "destinationNetwork": {
                          "type": "string",
                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                        },
                        "destinationCurrencySymbol": {
                          "type": "string",
                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "ARBITRUM destination details",
                      "anyOf": [
                        {
                          "required": [
                            "address"
                          ],
                          "properties": {
                            "address": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        },
                        {
                          "required": [
                            "destinationWalletAddress"
                          ],
                          "properties": {
                            "destinationWalletAddress": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        }
                      ],
                      "title": "ARBITRUM"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "OPTIMISM"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                        },
                        "memo": {
                          "type": "string",
                          "description": "Memo for the wallet, when the chain uses one"
                        },
                        "txId": {
                          "type": "string",
                          "description": "Blockchain transaction ID"
                        },
                        "txUrlScan": {
                          "type": "string",
                          "description": "Blockchain explorer URL for the transaction"
                        },
                        "destinationWalletAddress": {
                          "type": "string",
                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                        },
                        "destinationWalletMemo": {
                          "type": "string",
                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                        },
                        "destinationNetwork": {
                          "type": "string",
                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                        },
                        "destinationCurrencySymbol": {
                          "type": "string",
                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "OPTIMISM destination details",
                      "anyOf": [
                        {
                          "required": [
                            "address"
                          ],
                          "properties": {
                            "address": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        },
                        {
                          "required": [
                            "destinationWalletAddress"
                          ],
                          "properties": {
                            "destinationWalletAddress": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        }
                      ],
                      "title": "OPTIMISM"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "AVALANCHE"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                        },
                        "memo": {
                          "type": "string",
                          "description": "Memo for the wallet, when the chain uses one"
                        },
                        "txId": {
                          "type": "string",
                          "description": "Blockchain transaction ID"
                        },
                        "txUrlScan": {
                          "type": "string",
                          "description": "Blockchain explorer URL for the transaction"
                        },
                        "destinationWalletAddress": {
                          "type": "string",
                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                        },
                        "destinationWalletMemo": {
                          "type": "string",
                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                        },
                        "destinationNetwork": {
                          "type": "string",
                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                        },
                        "destinationCurrencySymbol": {
                          "type": "string",
                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "AVALANCHE destination details",
                      "anyOf": [
                        {
                          "required": [
                            "address"
                          ],
                          "properties": {
                            "address": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        },
                        {
                          "required": [
                            "destinationWalletAddress"
                          ],
                          "properties": {
                            "destinationWalletAddress": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        }
                      ],
                      "title": "AVALANCHE"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "BASE"
                          ]
                        },
                        "address": {
                          "type": "string",
                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                        },
                        "memo": {
                          "type": "string",
                          "description": "Memo for the wallet, when the chain uses one"
                        },
                        "txId": {
                          "type": "string",
                          "description": "Blockchain transaction ID"
                        },
                        "txUrlScan": {
                          "type": "string",
                          "description": "Blockchain explorer URL for the transaction"
                        },
                        "destinationWalletAddress": {
                          "type": "string",
                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                        },
                        "destinationWalletMemo": {
                          "type": "string",
                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                        },
                        "destinationNetwork": {
                          "type": "string",
                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                        },
                        "destinationCurrencySymbol": {
                          "type": "string",
                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                        }
                      },
                      "required": [
                        "type"
                      ],
                      "description": "BASE destination details",
                      "anyOf": [
                        {
                          "required": [
                            "address"
                          ],
                          "properties": {
                            "address": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        },
                        {
                          "required": [
                            "destinationWalletAddress"
                          ],
                          "properties": {
                            "destinationWalletAddress": {
                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                            }
                          }
                        }
                      ],
                      "title": "BASE"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_COL"
                          ]
                        },
                        "destinationBankCode": {
                          "type": "string",
                          "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                        },
                        "destinationBankAccountType": {
                          "type": "string",
                          "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "description": "Recipient ID document number. Required when creating or updating a destination."
                        },
                        "destinationDocumentType": {
                          "type": "string",
                          "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                      "title": "Bank Deposit COL"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "brebKey": {
                          "type": "string",
                          "minLength": 1,
                          "description": "Bre-B key (llave) that identifies the recipient account"
                        },
                        "email": {
                          "type": "string",
                          "description": "Recipient email (optional contact for the Bre-B rail)"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Recipient phone number (optional contact for the Bre-B rail)"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BRE_B_COP"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "brebKey",
                        "type"
                      ],
                      "description": "Colombian Bre-B payout details",
                      "title": "Bre-B COP"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankCode": {
                          "type": "string",
                          "pattern": "^\\d{4}$",
                          "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                        },
                        "destinationBankAccountNumber": {
                          "type": "string",
                          "minLength": 1,
                          "description": "Recipient bank account number"
                        },
                        "destinationBankAccountType": {
                          "type": "string",
                          "minLength": 1,
                          "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                        },
                        "destinationDocumentType": {
                          "type": "string",
                          "minLength": 1,
                          "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "minLength": 1,
                          "description": "Recipient ID document number"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "ACH_COP"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankCode",
                        "destinationBankAccountNumber",
                        "destinationBankAccountType",
                        "destinationDocumentType",
                        "destinationTaxId",
                        "type"
                      ],
                      "description": "Colombian ACH payout details",
                      "title": "ACH COP"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (unused for TWD — no network discovery)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "minLength": 2,
                          "description": "Bank name (required — TWD payouts run over SWIFT)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_TW"
                          ]
                        },
                        "destinationBankBranch": {
                          "type": "string",
                          "minLength": 2,
                          "description": "Bank branch (required — TWD payouts run over SWIFT)"
                        },
                        "bic": {
                          "type": "string",
                          "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                          "description": "SWIFT BIC code (required for TWD payouts)"
                        },
                        "destinationBankAccountType": {
                          "type": "string",
                          "description": "Type of bank account (legacy, optional)"
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "description": "Tax ID of the recipient (legacy, optional)"
                        },
                        "destinationDocumentType": {
                          "type": "string",
                          "description": "Document type of the recipient (legacy, optional)"
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "destinationBankName",
                        "type",
                        "destinationBankBranch",
                        "bic"
                      ],
                      "description": "Taiwan bank deposit details (SWIFT payout)",
                      "title": "Bank Deposit TW"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankCode": {
                          "type": "string",
                          "description": "Bank code"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationBankBranch": {
                          "type": "string",
                          "description": "Bank branch"
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "description": "Tax ID of the recipient"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_BR"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankCode",
                        "destinationBankAccount",
                        "destinationBankBranch",
                        "destinationTaxId",
                        "type"
                      ],
                      "description": "Brazilian bank deposit details",
                      "title": "Bank Deposit BR"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPixCode": {
                          "type": "string",
                          "description": "PIX code"
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "description": "Tax ID of the recipient"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "PIX_BR"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPixCode",
                        "destinationTaxId",
                        "type"
                      ],
                      "description": "Brazilian PIX details",
                      "title": "PIX BR"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccountNumber": {
                          "type": "string",
                          "description": "Bank account number"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Name of the bank"
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                          "description": "Tax ID of the recipient"
                        },
                        "destinationBankAccountType": {
                          "type": "string",
                          "description": "Type of bank account"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_VEN"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccountNumber",
                        "destinationBankName",
                        "destinationTaxId",
                        "destinationBankAccountType",
                        "type"
                      ],
                      "description": "Venezuelan bank deposit details",
                      "title": "Bank Deposit VEN"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankCode": {
                          "type": "string",
                          "description": "Bank code"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                          "description": "Tax ID of the recipient"
                        },
                        "destinationBankAccountType": {
                          "type": "string",
                          "description": "Type of bank account"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "PHONE_DEPOSIT_VEN"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankCode",
                        "destinationPhoneNumber",
                        "destinationTaxId",
                        "destinationBankAccountType",
                        "type"
                      ],
                      "description": "Venezuelan phone deposit details",
                      "title": "Phone Deposit VEN"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationIFSC": {
                          "type": "string",
                          "description": "IFSC code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_IN"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                      "title": "Bank Deposit IN",
                      "deprecated": true
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationIFSC": {
                          "type": "string",
                          "description": "IFSC code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "IMPS"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                      "title": "IMPS",
                      "deprecated": true
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationIFSC": {
                          "type": "string",
                          "description": "IFSC code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "THAI_QR"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                      "title": "Thai QR",
                      "deprecated": true
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationIFSC": {
                          "type": "string",
                          "description": "IFSC code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "VIET_QR"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                      "title": "Viet QR",
                      "deprecated": true
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationIFSC": {
                          "type": "string",
                          "description": "IFSC code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "GCASH"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                      "title": "GCash",
                      "deprecated": true
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "description": "Tax ID"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "MOBILE_PAYMENT_IN"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPhoneNumber",
                        "destinationTaxId",
                        "type"
                      ],
                      "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                      "title": "Mobile Payment IN",
                      "deprecated": true
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationBankCode": {
                          "type": "string",
                          "description": "Bank code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_VN"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "destinationBankCode",
                        "type"
                      ],
                      "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                      "title": "Bank Deposit VN",
                      "deprecated": true
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "bic": {
                          "type": "string",
                          "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "destinationAddress": {
                          "type": "string",
                          "description": "Address line 1 of the recipient"
                        },
                        "destinationCity": {
                          "type": "string",
                          "description": "Recipient city (defaults to Hong Kong)"
                        },
                        "accountHolderName": {
                          "type": "string",
                          "description": "Bank account holder name if different from payee"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_HK"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "bic",
                        "destinationBankName",
                        "destinationAddress",
                        "type"
                      ],
                      "description": "Hong Kong bank deposit details (HKD bank corridor)",
                      "title": "Bank Deposit HK"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationBankCode": {
                          "type": "string",
                          "pattern": "^\\d+$",
                          "description": "CNAPS / bank institution code (numeric, variable length)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name"
                        },
                        "destinationAddress": {
                          "type": "string",
                          "description": "Address line 1 of the recipient"
                        },
                        "destinationCity": {
                          "type": "string",
                          "description": "Recipient city"
                        },
                        "destinationState": {
                          "type": "string",
                          "minLength": 1,
                          "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                        },
                        "destinationPostcode": {
                          "type": "string",
                          "minLength": 1,
                          "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                        },
                        "destinationPhone": {
                          "type": "string",
                          "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                        },
                        "accountHolderName": {
                          "type": "string",
                          "description": "Bank account holder name if different from payee"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_CN"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "destinationBankCode",
                        "destinationBankName",
                        "destinationAddress",
                        "destinationCity",
                        "destinationState",
                        "destinationPostcode",
                        "type"
                      ],
                      "description": "China mainland bank deposit details (CNY bank corridor)",
                      "title": "Bank Deposit CN"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_AR"
                          ]
                        },
                        "destinationCBU": {
                          "type": "string",
                          "description": "CBU — 22-digit bank account key (legacy, optional)"
                        },
                        "destinationCVU": {
                          "type": "string",
                          "description": "CVU — 22-digit virtual account key (legacy, optional)"
                        },
                        "destinationAlias": {
                          "type": "string",
                          "description": "Account alias (legacy, optional)"
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                        },
                        "destinationDocumentType": {
                          "type": "string",
                          "description": "Document type of the recipient (legacy, optional)"
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Argentinian bank deposit details",
                      "title": "Bank Deposit AR"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationBankName is given)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "minLength": 1,
                          "description": "Recipient bank name (required for Chilean bank payouts)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_CL"
                          ]
                        },
                        "destinationBankAccountType": {
                          "type": "string",
                          "minLength": 1,
                          "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "minLength": 1,
                          "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                        },
                        "destinationDocumentType": {
                          "type": "string",
                          "description": "Document type of the recipient (legacy, optional)"
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "destinationBankName",
                        "type",
                        "destinationBankAccountType",
                        "destinationTaxId"
                      ],
                      "description": "Chilean bank deposit details",
                      "title": "Bank Deposit CL"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "minLength": 2,
                          "maxLength": 30,
                          "description": "Recipient name (required, 2–30 characters)"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 11,
                          "description": "Bank account number (max 11 digits for Bolivian accounts)"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (unused for BOB — no network discovery)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "maxLength": 20,
                          "description": "Bank name (optional, max 20 characters)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_BO"
                          ]
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 15,
                          "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type",
                        "destinationTaxId"
                      ],
                      "description": "Bolivian bank deposit details",
                      "title": "Bank Deposit BO"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_PE"
                          ]
                        },
                        "destinationCCI": {
                          "type": "string",
                          "description": "CCI — 20-digit interbank account code (legacy, optional)"
                        },
                        "destinationBankAccountType": {
                          "type": "string",
                          "description": "Account type (corriente/ahorro) (legacy, optional)"
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                        },
                        "destinationDocumentType": {
                          "type": "string",
                          "description": "Document type of the recipient (legacy, optional)"
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "destinationNetworkId",
                        "type"
                      ],
                      "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                      "title": "Bank Deposit PE",
                      "deprecated": true
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankCode": {
                          "type": "string",
                          "pattern": "^\\d{3}$",
                          "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                        },
                        "destinationBankAccountNumber": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 20,
                          "description": "Recipient bank account number (max 20)"
                        },
                        "destinationBankAccountType": {
                          "type": "string",
                          "enum": [
                            "CORRIENTE",
                            "AHORROS",
                            "PHONE"
                          ],
                          "description": "Bank account type"
                        },
                        "destinationCCI": {
                          "type": "string",
                          "pattern": "^\\d{1,20}$",
                          "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                        },
                        "destinationDocumentType": {
                          "type": "string",
                          "enum": [
                            "CC",
                            "CE",
                            "RUC",
                            "PAS",
                            "PAR",
                            "LMI",
                            "OTHER"
                          ],
                          "description": "Recipient identification type"
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 50,
                          "description": "Recipient identification number (max 50)"
                        },
                        "email": {
                          "type": "string",
                          "pattern": "^.+@.+\\..+$",
                          "description": "Recipient email (required for PEN payouts)"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "pattern": "^\\d{1,9}$",
                          "description": "Recipient phone number (required, max 9 digits)"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_PEN"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankCode",
                        "destinationBankAccountNumber",
                        "destinationBankAccountType",
                        "destinationCCI",
                        "destinationDocumentType",
                        "destinationTaxId",
                        "email",
                        "destinationPhoneNumber",
                        "type"
                      ],
                      "description": "Peruvian bank deposit details (bank-code payout corridor).",
                      "title": "Bank Deposit PEN"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationBankName is given)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_NG"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Nigeria bank deposit details",
                      "title": "Bank Deposit NG"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationBankName is given)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_KE"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Kenya bank deposit details",
                      "title": "Bank Deposit KE"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationBankName is given)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_GH"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                      "title": "Bank Deposit GH",
                      "deprecated": true
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationBankName is given)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_ZA"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "South Africa bank deposit details",
                      "title": "Bank Deposit ZA"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationBankName is given)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_TZ"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Tanzania bank deposit details",
                      "title": "Bank Deposit TZ"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationBankName is given)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_UG"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Uganda bank deposit details",
                      "title": "Bank Deposit UG"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationBankName is given)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_RW"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Rwanda bank deposit details",
                      "title": "Bank Deposit RW"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationBankName is given)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_MW"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Malawi bank deposit details",
                      "title": "Bank Deposit MW"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationBankName is given)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_ZM"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Zambia bank deposit details",
                      "title": "Bank Deposit ZM"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationBankName is given)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_BW"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Botswana bank deposit details",
                      "title": "Bank Deposit BW"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationBankName is given)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_CD"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                      "title": "Bank Deposit CD",
                      "deprecated": true
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationBankName is given)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_XOF"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "West African CFA bank deposit details",
                      "title": "Bank Deposit XOF"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankAccount": {
                          "type": "string",
                          "description": "Bank account"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationBankName is given)"
                        },
                        "destinationBankName": {
                          "type": "string",
                          "description": "Bank name (used to resolve the network when id is omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_XAF"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccount",
                        "type"
                      ],
                      "description": "Central African CFA bank deposit details",
                      "title": "Bank Deposit XAF"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationNetworkName is given)"
                        },
                        "destinationNetworkName": {
                          "type": "string",
                          "description": "Mobile money network name (resolves the network when id omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_NG"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPhoneNumber",
                        "type"
                      ],
                      "description": "Nigeria mobile money details",
                      "title": "Mobile Money NG"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationNetworkName is given)"
                        },
                        "destinationNetworkName": {
                          "type": "string",
                          "description": "Mobile money network name (resolves the network when id omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_KE"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPhoneNumber",
                        "type"
                      ],
                      "description": "Kenya mobile money details",
                      "title": "Mobile Money KE"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationNetworkName is given)"
                        },
                        "destinationNetworkName": {
                          "type": "string",
                          "description": "Mobile money network name (resolves the network when id omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_GH"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPhoneNumber",
                        "type"
                      ],
                      "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                      "title": "Mobile Money GH",
                      "deprecated": true
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationNetworkName is given)"
                        },
                        "destinationNetworkName": {
                          "type": "string",
                          "description": "Mobile money network name (resolves the network when id omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_ZA"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPhoneNumber",
                        "type"
                      ],
                      "description": "South Africa mobile money details",
                      "title": "Mobile Money ZA"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationNetworkName is given)"
                        },
                        "destinationNetworkName": {
                          "type": "string",
                          "description": "Mobile money network name (resolves the network when id omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_TZ"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPhoneNumber",
                        "type"
                      ],
                      "description": "Tanzania mobile money details",
                      "title": "Mobile Money TZ"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationNetworkName is given)"
                        },
                        "destinationNetworkName": {
                          "type": "string",
                          "description": "Mobile money network name (resolves the network when id omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_UG"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPhoneNumber",
                        "type"
                      ],
                      "description": "Uganda mobile money details",
                      "title": "Mobile Money UG"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationNetworkName is given)"
                        },
                        "destinationNetworkName": {
                          "type": "string",
                          "description": "Mobile money network name (resolves the network when id omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_RW"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPhoneNumber",
                        "type"
                      ],
                      "description": "Rwanda mobile money details",
                      "title": "Mobile Money RW"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationNetworkName is given)"
                        },
                        "destinationNetworkName": {
                          "type": "string",
                          "description": "Mobile money network name (resolves the network when id omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_MW"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPhoneNumber",
                        "type"
                      ],
                      "description": "Malawi mobile money details",
                      "title": "Mobile Money MW"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationNetworkName is given)"
                        },
                        "destinationNetworkName": {
                          "type": "string",
                          "description": "Mobile money network name (resolves the network when id omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_ZM"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPhoneNumber",
                        "type"
                      ],
                      "description": "Zambia mobile money details",
                      "title": "Mobile Money ZM"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationNetworkName is given)"
                        },
                        "destinationNetworkName": {
                          "type": "string",
                          "description": "Mobile money network name (resolves the network when id omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_BW"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPhoneNumber",
                        "type"
                      ],
                      "description": "Botswana mobile money details",
                      "title": "Mobile Money BW"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationNetworkName is given)"
                        },
                        "destinationNetworkName": {
                          "type": "string",
                          "description": "Mobile money network name (resolves the network when id omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_CD"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPhoneNumber",
                        "type"
                      ],
                      "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                      "title": "Mobile Money CD",
                      "deprecated": true
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationNetworkName is given)"
                        },
                        "destinationNetworkName": {
                          "type": "string",
                          "description": "Mobile money network name (resolves the network when id omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_XOF"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPhoneNumber",
                        "type"
                      ],
                      "description": "West African CFA mobile money details",
                      "title": "Mobile Money XOF"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPhoneNumber": {
                          "type": "string",
                          "description": "Phone number"
                        },
                        "destinationNetworkId": {
                          "type": "string",
                          "description": "Payout network id (optional if destinationNetworkName is given)"
                        },
                        "destinationNetworkName": {
                          "type": "string",
                          "description": "Mobile money network name (resolves the network when id omitted)"
                        },
                        "country": {
                          "type": "string",
                          "description": "ISO 3166 country code"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "MOBILE_MONEY_XAF"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPhoneNumber",
                        "type"
                      ],
                      "description": "Central African CFA mobile money details",
                      "title": "Mobile Money XAF"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationBankCode": {
                          "type": "string",
                          "description": "Bank code"
                        },
                        "destinationBankAccountNumber": {
                          "type": "string",
                          "description": "Bank account number (18-digit CLABE)"
                        },
                        "numericReference": {
                          "type": "string",
                          "description": "Numeric reference"
                        },
                        "notesReference": {
                          "type": "string",
                          "description": "Notes reference"
                        },
                        "destinationClabe": {
                          "type": "string",
                          "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                        },
                        "destinationTaxId": {
                          "type": "string",
                          "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "BANK_DEPOSIT_MX"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationBankAccountNumber",
                        "type"
                      ],
                      "description": "Mexican bank deposit details",
                      "title": "Bank Deposit MX"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "destinationName": {
                          "type": "string",
                          "description": "Name of the recipient"
                        },
                        "destinationPseNumber": {
                          "type": "string",
                          "description": "PSE number"
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "PSE"
                          ]
                        }
                      },
                      "required": [
                        "destinationName",
                        "destinationPseNumber",
                        "type"
                      ],
                      "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                      "title": "PSE",
                      "deprecated": true
                    }
                  ],
                  "description": "Detailed withdrawal information",
                  "title": "WithdrawalInfo"
                },
                "source": {
                  "type": "string",
                  "enum": [
                    "ui",
                    "apiApp",
                    "externalApi",
                    "internal"
                  ],
                  "description": "Source of withdrawal creation",
                  "example": "externalApi"
                },
                "requires2FA": {
                  "type": "boolean",
                  "description": "Whether 2FA is required for this withdrawal",
                  "example": false
                },
                "twoFactorToken": {
                  "type": "string",
                  "description": "2FA token for email approval",
                  "example": "abc123"
                },
                "twoFactorApprovedAt": {
                  "type": "number",
                  "description": "Timestamp when 2FA was approved",
                  "example": 1723027132
                },
                "errorCode": {
                  "type": "string",
                  "description": "Error code when status is Review",
                  "example": "INSUFFICIENT_BALANCE"
                },
                "errorDetails": {
                  "type": "string",
                  "description": "Detailed error information",
                  "example": "Insufficient balance for withdrawal"
                },
                "reviewedBy": {
                  "type": "string",
                  "description": "Admin email who reviewed the withdrawal",
                  "example": "admin@example.com"
                },
                "reviewedAt": {
                  "type": "number",
                  "description": "Timestamp when review happened",
                  "example": 1723027132
                }
              },
              "required": [
                "withdrawalId",
                "createdAt",
                "amount",
                "currency",
                "fee",
                "feeCurrency",
                "status"
              ],
              "description": "Details of the withdrawal associated with the order"
            },
            "createdAt": {
              "type": "number",
              "description": "Creation time of the order (timestamp)",
              "examples": [
                1723027132,
                1723027200,
                1723027300
              ]
            },
            "updatedAt": {
              "type": "number",
              "description": "Last update time of the order (timestamp)",
              "examples": [
                1723027132,
                1723027200,
                1723027300
              ]
            },
            "status": {
              "type": "string",
              "enum": [
                "Pending",
                "Processing",
                "Reviewing",
                "Success",
                "Failed",
                "Canceled"
              ],
              "description": "Current status of the order",
              "title": "OrderStatus",
              "examples": [
                "Pending",
                "Processing",
                "Reviewing",
                "Success",
                "Failed"
              ]
            },
            "externalReference": {
              "type": "string",
              "description": "External reference of the order, as you supplied it on create."
            },
            "externalRefeference": {
              "type": "string",
              "description": "Deprecated misspelling of `externalReference` — same value. Read `externalReference` instead; this key remains for backward compatibility and will be removed in a future major version.",
              "deprecated": true
            },
            "fee": {
              "type": "number",
              "minimum": 0,
              "description": "Total fee for the order once all the execution is completed",
              "examples": [
                6.37,
                8.5,
                10.25
              ]
            },
            "expectedFee": {
              "type": "number",
              "minimum": 0,
              "exclusiveMinimum": true,
              "description": "Expected fee given the initial deposit amount",
              "examples": [
                6.88,
                9.2,
                11.5
              ]
            },
            "expectedGasFee": {
              "type": "number",
              "description": "Expected gas fee if the withdrawal is with crypto",
              "examples": [
                6.88,
                8.5,
                10.25
              ]
            },
            "feeCurrency": {
              "type": "string",
              "description": "Currency of the fee",
              "examples": [
                "EUR",
                "USD",
                "GBP"
              ]
            }
          },
          "required": [
            "orderId",
            "createdAt",
            "status",
            "fee",
            "expectedFee",
            "feeCurrency"
          ],
          "description": "Schema representing order details"
        },
        "description": "Response schema for listing orders"
      },
      "ConfirmPayinRequest": {
        "type": "object",
        "properties": {
          "orderId": {
            "type": "string",
            "minLength": 12,
            "maxLength": 12,
            "pattern": "^[A-Z0-9]{12}$",
            "description": "ID of the order",
            "examples": [
              "01CLFXMT67II",
              "2R7E5Y5KFXP8",
              "4FWWRE3Y2URM"
            ]
          },
          "referenceId": {
            "type": "string",
            "description": "Reference ID of the payin, for India is the UTR given after the payment",
            "examples": [
              "123",
              "456",
              "789"
            ]
          }
        },
        "required": [
          "orderId",
          "referenceId"
        ],
        "description": "Request schema for confirming a payin"
      },
      "ConfirmPayinResponse": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean",
            "description": "Whether the payin was confirmed successfully"
          },
          "message": {
            "type": "string",
            "description": "Success message"
          }
        },
        "required": [
          "success"
        ],
        "description": "Response schema for confirming a payin"
      },
      "WebhookEventType": {
        "anyOf": [
          {
            "type": "string",
            "enum": [
              "deposit_completed"
            ]
          },
          {
            "type": "string",
            "enum": [
              "deposit_partially_completed"
            ]
          },
          {
            "type": "string",
            "enum": [
              "deposit_method_created"
            ],
            "description": "A deposit method was created for an account. `data.status` is `ACTIVE` when instructions are already available, or `PENDING` when provisioning is still in progress (a `deposit_method_activated` event follows once ready)."
          },
          {
            "type": "string",
            "enum": [
              "deposit_method_activated"
            ],
            "description": "A deposit method became ACTIVE and `data.depositInfo` carries the receiving instructions (IBAN / wallet address). Sent at most once per method; ordering relative to `deposit_method_created` is not guaranteed when activation is immediate."
          },
          {
            "type": "string",
            "enum": [
              "trade_completed"
            ],
            "description": "Reserved and **not currently emitted**. Do not build handlers that depend on receiving this type today; use `order_status_updated` / `order_completed` to track an order."
          },
          {
            "type": "string",
            "enum": [
              "withdrawal_completed"
            ],
            "description": "Reserved and **not currently emitted**. Do not build handlers that depend on receiving this type today; use `order_status_updated` / `order_completed` to track a payout leg."
          },
          {
            "type": "string",
            "enum": [
              "order_status_updated"
            ]
          },
          {
            "type": "string",
            "enum": [
              "openbanking_status_updated"
            ]
          },
          {
            "type": "string",
            "enum": [
              "kyc_completed"
            ],
            "description": "Deprecated. Will still be sent for backward compatibility when identity verification succeeds in certain flows. Prefer `verification_status_updated` for all KYC/KYB lifecycle and status changes (approved, rejected, pending, etc.).",
            "deprecated": true
          },
          {
            "type": "string",
            "enum": [
              "verification_status_updated"
            ],
            "description": "**Recommended** for identity verification: KYC or KYB status changes. Inspect `data.verificationType` (`KYC` | `KYB`) and `data.status`."
          },
          {
            "type": "string",
            "enum": [
              "deposit_action_required"
            ],
            "description": "An inbound deposit is held until you act — today only `data.reason: travel_rule_origin`: declare who sent it with `POST /v1/deposits/holds/{holdId}/travel-rule`. Re-sent every 6 hours while unanswered (`data.reminder: true`). Deduplicate on `data.eventId`."
          },
          {
            "type": "string",
            "enum": [
              "conversation_created"
            ],
            "description": "A support conversation was opened. Notification-only: `data` carries pointers/timestamps, never message content. Fetch the conversation over the REST API. Deduplicate on `data.id` (stable per event)."
          },
          {
            "type": "string",
            "enum": [
              "conversation_updated"
            ],
            "description": "A support conversation changed (status/assignment/close/feedback). Notification-only: `data` carries pointers/timestamps, never message content. Deduplicate on `data.id` (stable per event)."
          },
          {
            "type": "string",
            "enum": [
              "conversation_message_created"
            ],
            "description": "A new message was added to a support conversation. Notification-only: `data` carries `data.messageId` + `data.senderType` (`account` | `support` | `system`), never the message text. Fetch the message over the REST API. Deduplicate on `data.id` (stable per event)."
          }
        ],
        "description": "Webhook event category; determines the shape of `data`.",
        "example": "verification_status_updated"
      },
      "WebhookRequest": {
        "type": "object",
        "properties": {
          "type": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "deposit_completed"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "deposit_partially_completed"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "deposit_method_created"
                ],
                "description": "A deposit method was created for an account. `data.status` is `ACTIVE` when instructions are already available, or `PENDING` when provisioning is still in progress (a `deposit_method_activated` event follows once ready)."
              },
              {
                "type": "string",
                "enum": [
                  "deposit_method_activated"
                ],
                "description": "A deposit method became ACTIVE and `data.depositInfo` carries the receiving instructions (IBAN / wallet address). Sent at most once per method; ordering relative to `deposit_method_created` is not guaranteed when activation is immediate."
              },
              {
                "type": "string",
                "enum": [
                  "trade_completed"
                ],
                "description": "Reserved and **not currently emitted**. Do not build handlers that depend on receiving this type today; use `order_status_updated` / `order_completed` to track an order."
              },
              {
                "type": "string",
                "enum": [
                  "withdrawal_completed"
                ],
                "description": "Reserved and **not currently emitted**. Do not build handlers that depend on receiving this type today; use `order_status_updated` / `order_completed` to track a payout leg."
              },
              {
                "type": "string",
                "enum": [
                  "order_status_updated"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "openbanking_status_updated"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "kyc_completed"
                ],
                "description": "Deprecated. Will still be sent for backward compatibility when identity verification succeeds in certain flows. Prefer `verification_status_updated` for all KYC/KYB lifecycle and status changes (approved, rejected, pending, etc.).",
                "deprecated": true
              },
              {
                "type": "string",
                "enum": [
                  "verification_status_updated"
                ],
                "description": "**Recommended** for identity verification: KYC or KYB status changes. Inspect `data.verificationType` (`KYC` | `KYB`) and `data.status`."
              },
              {
                "type": "string",
                "enum": [
                  "deposit_action_required"
                ],
                "description": "An inbound deposit is held until you act — today only `data.reason: travel_rule_origin`: declare who sent it with `POST /v1/deposits/holds/{holdId}/travel-rule`. Re-sent every 6 hours while unanswered (`data.reminder: true`). Deduplicate on `data.eventId`."
              },
              {
                "type": "string",
                "enum": [
                  "conversation_created"
                ],
                "description": "A support conversation was opened. Notification-only: `data` carries pointers/timestamps, never message content. Fetch the conversation over the REST API. Deduplicate on `data.id` (stable per event)."
              },
              {
                "type": "string",
                "enum": [
                  "conversation_updated"
                ],
                "description": "A support conversation changed (status/assignment/close/feedback). Notification-only: `data` carries pointers/timestamps, never message content. Deduplicate on `data.id` (stable per event)."
              },
              {
                "type": "string",
                "enum": [
                  "conversation_message_created"
                ],
                "description": "A new message was added to a support conversation. Notification-only: `data` carries `data.messageId` + `data.senderType` (`account` | `support` | `system`), never the message text. Fetch the message over the REST API. Deduplicate on `data.id` (stable per event)."
              }
            ],
            "description": "Webhook event category; determines the shape of `data`.",
            "example": "verification_status_updated"
          },
          "id": {
            "type": "string",
            "description": "ID of the webhook event",
            "example": "evt_123456"
          },
          "api_version": {
            "type": "string",
            "description": "API version of the webhook event",
            "example": "1.0"
          },
          "apiKey": {
            "type": "string",
            "description": "Provided API key by you so we can authenticate incoming requests coming to your webhook endpoint",
            "example": "xxx"
          },
          "data": {
            "anyOf": [
              {
                "type": "object",
                "properties": {
                  "depositId": {
                    "type": "string",
                    "minLength": 1,
                    "description": "ID of the deposit. Normally a 12-character internal id; deposits created before mid-2026 may carry a longer legacy id. Treat it as an opaque string."
                  },
                  "externalReference": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 128,
                    "description": "Your own reference for this deposit. Stored as-is and returned on create, detail and list, so you can look the deposit up by it after a network timeout instead of retrying blind. Not interpreted by VirtuaBroker and not shown to the payer — for the payer's transfer reference use depositInfo.referenceCode.",
                    "examples": [
                      "partner-ref-0001",
                      "inv_2026_00417"
                    ]
                  },
                  "userData": {
                    "oneOf": [
                      {
                        "type": "object",
                        "properties": {
                          "userType": {
                            "type": "string",
                            "enum": [
                              "individual"
                            ]
                          },
                          "firstName": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 50,
                            "description": "First name of the user making the deposit (or representative for business)",
                            "examples": [
                              "John",
                              "Alice",
                              "Bob"
                            ]
                          },
                          "lastName": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "Last name of the user making the deposit (or representative for business)",
                            "examples": [
                              "Doe",
                              "Smith",
                              "Johnson"
                            ]
                          },
                          "userEmail": {
                            "type": "string",
                            "maxLength": 254,
                            "format": "email",
                            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                            "description": "Email of the user making the deposit",
                            "examples": [
                              "user@virtuabroker.com",
                              "john.doe@example.com",
                              "alice@example.com"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "maxLength": 150,
                            "description": "Address of the user making the deposit",
                            "examples": [
                              "123 Main St, Anytown, ES",
                              "456 Elm St, Anytown, ES",
                              "789 Oak St, Anytown, ES"
                            ]
                          },
                          "taxDocumentType": {
                            "type": "string",
                            "maxLength": 50,
                            "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                            "examples": [
                              "CC",
                              "NIT",
                              "CE",
                              "NIF",
                              "Other"
                            ]
                          },
                          "taxId": {
                            "type": "string",
                            "maxLength": 30,
                            "description": "Tax ID of the user making the deposit",
                            "examples": [
                              "123-45-6789",
                              "987-65-4321",
                              "111-22-3333"
                            ]
                          },
                          "country": {
                            "type": "string",
                            "enum": [
                              "US",
                              "CA",
                              "GB",
                              "DE",
                              "FR",
                              "AU",
                              "JP",
                              "KR",
                              "SE",
                              "NO",
                              "DK",
                              "FI",
                              "NL",
                              "BE",
                              "CH",
                              "AT",
                              "NZ",
                              "SG",
                              "IE",
                              "LU",
                              "PT",
                              "ES",
                              "IT",
                              "GR",
                              "CZ",
                              "PL",
                              "HU",
                              "SK",
                              "SI",
                              "EE",
                              "LT",
                              "LV",
                              "IS",
                              "MT",
                              "CY",
                              "HR",
                              "RO",
                              "BG",
                              "BR",
                              "AR",
                              "CL",
                              "MX",
                              "CO",
                              "PE",
                              "PA",
                              "UY",
                              "BO",
                              "ZA",
                              "NG",
                              "KE",
                              "GH",
                              "TZ",
                              "UG",
                              "RW",
                              "MW",
                              "ZM",
                              "BW",
                              "CD",
                              "CI",
                              "CM",
                              "IL",
                              "AE",
                              "QA",
                              "SA",
                              "OM",
                              "KW",
                              "BH",
                              "MY",
                              "PH",
                              "TH",
                              "VN",
                              "ID",
                              "IN",
                              "LK",
                              "NP",
                              "BD",
                              "PK",
                              "EG",
                              "MA",
                              "DZ",
                              "TN",
                              "JO",
                              "LB",
                              "TR",
                              "KH",
                              "MM",
                              "LA",
                              "EN",
                              "BT",
                              "VE",
                              "TW",
                              "HK",
                              "CN"
                            ],
                            "description": "Country code of the user making the deposit",
                            "examples": [
                              "ES",
                              "US",
                              "GB"
                            ]
                          },
                          "state": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "State of the user making the deposit",
                            "examples": [
                              "Madrid",
                              "New York",
                              "London"
                            ]
                          },
                          "postalCode": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 30,
                            "description": "Postal code of the user making the deposit",
                            "examples": [
                              "12345",
                              "67890",
                              "abcde"
                            ]
                          },
                          "city": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "City of the user making the deposit",
                            "examples": [
                              "Madrid",
                              "New York",
                              "London"
                            ]
                          },
                          "dob": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 30,
                            "description": "Date of birth of the user making the deposit",
                            "examples": [
                              "1990-01-01",
                              "1995-05-15",
                              "1988-12-31"
                            ]
                          },
                          "phoneNumber": {
                            "type": "string",
                            "maxLength": 30,
                            "description": "Phone number of the user making the deposit",
                            "examples": [
                              "+447700900123",
                              "+447700900456",
                              "+447700900789"
                            ]
                          },
                          "kycId": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 300,
                            "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                            "examples": [
                              "kyc-12345",
                              "kyc-67890",
                              "kyc-abcde"
                            ]
                          },
                          "activity": {
                            "type": "string",
                            "description": "Activity of the user making the deposit",
                            "examples": [
                              "worker",
                              "business",
                              "student"
                            ]
                          }
                        },
                        "required": [
                          "userType",
                          "firstName",
                          "userEmail",
                          "country"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "userType": {
                            "type": "string",
                            "enum": [
                              "business"
                            ]
                          },
                          "businessName": {
                            "type": "string",
                            "maxLength": 150,
                            "description": "Business name (required when userType is business)",
                            "examples": [
                              "Acme Corp",
                              "Tech Solutions Inc",
                              "Global Services Ltd"
                            ]
                          },
                          "firstName": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 50,
                            "description": "First name of the user making the deposit (or representative for business)",
                            "examples": [
                              "John",
                              "Alice",
                              "Bob"
                            ]
                          },
                          "userEmail": {
                            "type": "string",
                            "maxLength": 254,
                            "format": "email",
                            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                            "description": "Email of the user making the deposit",
                            "examples": [
                              "user@virtuabroker.com",
                              "john.doe@example.com",
                              "alice@example.com"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "maxLength": 150,
                            "description": "Address of the user making the deposit",
                            "examples": [
                              "123 Main St, Anytown, ES",
                              "456 Elm St, Anytown, ES",
                              "789 Oak St, Anytown, ES"
                            ]
                          },
                          "taxDocumentType": {
                            "type": "string",
                            "maxLength": 50,
                            "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                            "examples": [
                              "CC",
                              "NIT",
                              "CE",
                              "NIF",
                              "Other"
                            ]
                          },
                          "taxId": {
                            "type": "string",
                            "maxLength": 30,
                            "description": "Tax ID of the user making the deposit",
                            "examples": [
                              "123-45-6789",
                              "987-65-4321",
                              "111-22-3333"
                            ]
                          },
                          "country": {
                            "type": "string",
                            "enum": [
                              "US",
                              "CA",
                              "GB",
                              "DE",
                              "FR",
                              "AU",
                              "JP",
                              "KR",
                              "SE",
                              "NO",
                              "DK",
                              "FI",
                              "NL",
                              "BE",
                              "CH",
                              "AT",
                              "NZ",
                              "SG",
                              "IE",
                              "LU",
                              "PT",
                              "ES",
                              "IT",
                              "GR",
                              "CZ",
                              "PL",
                              "HU",
                              "SK",
                              "SI",
                              "EE",
                              "LT",
                              "LV",
                              "IS",
                              "MT",
                              "CY",
                              "HR",
                              "RO",
                              "BG",
                              "BR",
                              "AR",
                              "CL",
                              "MX",
                              "CO",
                              "PE",
                              "PA",
                              "UY",
                              "BO",
                              "ZA",
                              "NG",
                              "KE",
                              "GH",
                              "TZ",
                              "UG",
                              "RW",
                              "MW",
                              "ZM",
                              "BW",
                              "CD",
                              "CI",
                              "CM",
                              "IL",
                              "AE",
                              "QA",
                              "SA",
                              "OM",
                              "KW",
                              "BH",
                              "MY",
                              "PH",
                              "TH",
                              "VN",
                              "ID",
                              "IN",
                              "LK",
                              "NP",
                              "BD",
                              "PK",
                              "EG",
                              "MA",
                              "DZ",
                              "TN",
                              "JO",
                              "LB",
                              "TR",
                              "KH",
                              "MM",
                              "LA",
                              "EN",
                              "BT",
                              "VE",
                              "TW",
                              "HK",
                              "CN"
                            ],
                            "description": "Country code of the user making the deposit",
                            "examples": [
                              "ES",
                              "US",
                              "GB"
                            ]
                          },
                          "state": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "State of the user making the deposit",
                            "examples": [
                              "Madrid",
                              "New York",
                              "London"
                            ]
                          },
                          "postalCode": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 30,
                            "description": "Postal code of the user making the deposit",
                            "examples": [
                              "12345",
                              "67890",
                              "abcde"
                            ]
                          },
                          "city": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "City of the user making the deposit",
                            "examples": [
                              "Madrid",
                              "New York",
                              "London"
                            ]
                          },
                          "dob": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 30,
                            "description": "Date of birth of the user making the deposit",
                            "examples": [
                              "1990-01-01",
                              "1995-05-15",
                              "1988-12-31"
                            ]
                          },
                          "phoneNumber": {
                            "type": "string",
                            "maxLength": 30,
                            "description": "Phone number of the user making the deposit",
                            "examples": [
                              "+447700900123",
                              "+447700900456",
                              "+447700900789"
                            ]
                          },
                          "kycId": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 300,
                            "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                            "examples": [
                              "kyc-12345",
                              "kyc-67890",
                              "kyc-abcde"
                            ]
                          },
                          "activity": {
                            "type": "string",
                            "description": "Activity of the user making the deposit",
                            "examples": [
                              "worker",
                              "business",
                              "student"
                            ]
                          }
                        },
                        "required": [
                          "userType",
                          "businessName",
                          "firstName",
                          "userEmail",
                          "country"
                        ]
                      }
                    ],
                    "description": "User data of the person/company making the deposit",
                    "examples": [
                      {
                        "userType": "individual",
                        "firstName": "John",
                        "lastName": "Doe",
                        "userEmail": "user@virtuabroker.com",
                        "address": "123 Main St, Anytown, ES",
                        "taxId": "123-45-6789",
                        "country": "ES"
                      },
                      {
                        "userType": "individual",
                        "firstName": "Alice",
                        "lastName": "Smith",
                        "userEmail": "alice@example.com",
                        "address": "456 Elm St, Anytown, ES",
                        "taxId": "987-65-4321",
                        "country": "ES"
                      }
                    ]
                  },
                  "createdAt": {
                    "type": "number",
                    "description": "Creation time of the deposit",
                    "examples": [
                      1723027132,
                      1723027133,
                      1723027134
                    ]
                  },
                  "rail": {
                    "type": "string",
                    "enum": [
                      "BALANCE",
                      "SEPA",
                      "BTC",
                      "ETH",
                      "MATIC",
                      "POLYGON",
                      "CELO",
                      "TRON",
                      "SOLANA",
                      "ARBITRUM",
                      "OPTIMISM",
                      "AVALANCHE",
                      "BSC",
                      "BASE",
                      "XRP",
                      "PIX_BR",
                      "UPI",
                      "IMPS",
                      "TRY_BANK_TRANSFER",
                      "AED_BANK_TRANSFER",
                      "SPEI",
                      "IDR_BANK_TRANSFER",
                      "CREDIT_CARD",
                      "THAI_QR",
                      "VIET_QR",
                      "GCASH",
                      "ARGENTINA_BANK_TRANSFER",
                      "PSE",
                      "CLABE",
                      "PIX",
                      "BANK_DEPOSIT_COL",
                      "BANK_DEPOSIT_AR",
                      "BANK_DEPOSIT_CL",
                      "BANK_DEPOSIT_PE",
                      "BANK_DEPOSIT_BO",
                      "BANK_DEPOSIT_BR",
                      "BANK_DEPOSIT_NG",
                      "BANK_DEPOSIT_KE",
                      "BANK_DEPOSIT_GH",
                      "BANK_DEPOSIT_ZA",
                      "BANK_DEPOSIT_TZ",
                      "BANK_DEPOSIT_UG",
                      "BANK_DEPOSIT_RW",
                      "BANK_DEPOSIT_MW",
                      "BANK_DEPOSIT_ZM",
                      "BANK_DEPOSIT_BW",
                      "BANK_DEPOSIT_CD",
                      "BANK_DEPOSIT_XOF",
                      "BANK_DEPOSIT_XAF",
                      "MOBILE_MONEY_NG",
                      "MOBILE_MONEY_KE",
                      "MOBILE_MONEY_GH",
                      "MOBILE_MONEY_ZA",
                      "MOBILE_MONEY_TZ",
                      "MOBILE_MONEY_UG",
                      "MOBILE_MONEY_RW",
                      "MOBILE_MONEY_MW",
                      "MOBILE_MONEY_ZM",
                      "MOBILE_MONEY_BW",
                      "MOBILE_MONEY_CD",
                      "MOBILE_MONEY_XOF",
                      "MOBILE_MONEY_XAF",
                      "ACH_US",
                      "GBP_BANK_TRANSFER"
                    ],
                    "description": "Rail of the deposit"
                  },
                  "receivedAt": {
                    "type": "number",
                    "description": "Unix ms timestamp of when the funds for this deposit ARRIVED — recorded when the incoming payment is matched to the deposit, which is before it is credited. Present whenever funds have arrived, including a deposit whose funds are still held in review; omitted entirely when no funds ever arrived, so a never-funded or cancelled deposit has no value here and its presence is a reliable settlement signal for reconciliation. Identical on GET /v1/deposits and GET /v1/deposits/{depositId}. Note that the deposit object embedded in order and operation responses does not yet apply this rule — it returns the stored value. Not the creation time — use createdAt for that.",
                    "examples": [
                      1723027132000,
                      1723027133000,
                      1723027134000
                    ]
                  },
                  "expectedAmount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Amount expected of the deposit",
                    "examples": [
                      1000,
                      2000,
                      3000
                    ]
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Amount received of the deposit",
                    "examples": [
                      1000,
                      2000,
                      3000
                    ]
                  },
                  "currency": {
                    "anyOf": [
                      {
                        "type": "string",
                        "enum": [
                          "EUR",
                          "USD",
                          "GBP",
                          "BRL",
                          "MXN",
                          "ARS",
                          "COP",
                          "PEN",
                          "NGN",
                          "KES",
                          "TZS",
                          "UGX",
                          "RWF",
                          "MWK",
                          "ZMW",
                          "XOF",
                          "XAF",
                          "BWP"
                        ]
                      },
                      {
                        "type": "string",
                        "enum": [
                          "USDC",
                          "USDT",
                          "CUSD",
                          "BTC",
                          "ETH",
                          "POL",
                          "SOL",
                          "TRX",
                          "AVAX",
                          "XRP",
                          "BNB"
                        ]
                      }
                    ],
                    "description": "Currency of the deposit",
                    "examples": [
                      "EUR",
                      "BRL"
                    ]
                  },
                  "fee": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Fee for the deposit. This value is written once the deposit has been executed. Meanwhile it will appear 0.",
                    "example": 10
                  },
                  "expectedFee": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Fee for the deposit. This value is correlated with the expected amount for the deposit.",
                    "examples": [
                      10,
                      20,
                      30
                    ]
                  },
                  "feeCurrency": {
                    "anyOf": [
                      {
                        "type": "string",
                        "enum": [
                          "EUR",
                          "USD",
                          "GBP",
                          "BRL",
                          "MXN",
                          "ARS",
                          "COP",
                          "PEN",
                          "NGN",
                          "KES",
                          "TZS",
                          "UGX",
                          "RWF",
                          "MWK",
                          "ZMW",
                          "XOF",
                          "XAF",
                          "BWP"
                        ]
                      },
                      {
                        "type": "string",
                        "enum": [
                          "USDC",
                          "USDT",
                          "CUSD",
                          "BTC",
                          "ETH",
                          "POL",
                          "SOL",
                          "TRX",
                          "AVAX",
                          "XRP",
                          "BNB"
                        ]
                      }
                    ],
                    "description": "Currency of the fee",
                    "examples": [
                      "EUR",
                      "BRL"
                    ]
                  },
                  "status": {
                    "anyOf": [
                      {
                        "type": "string",
                        "enum": [
                          "Pending",
                          "Processing",
                          "Success",
                          "Failed",
                          "Canceled",
                          "Reviewing"
                        ],
                        "description": "Common status values that are shared across all operation types",
                        "examples": [
                          "Pending",
                          "Processing",
                          "Success",
                          "Failed",
                          "Canceled",
                          "Reviewing"
                        ]
                      },
                      {
                        "type": "string",
                        "enum": [
                          "PendingCancel",
                          "Received"
                        ]
                      }
                    ],
                    "description": "Status of the deposit",
                    "examples": [
                      "Pending",
                      "Success",
                      "Failed",
                      "Received",
                      "PendingCancel"
                    ]
                  },
                  "depositInfo": {
                    "oneOf": [
                      {
                        "type": "object",
                        "properties": {
                          "accountHolder": {
                            "type": "string",
                            "description": "Name of the account holder",
                            "example": "John Doe"
                          },
                          "iban": {
                            "type": "string",
                            "description": "SEPA Bank Account Number",
                            "example": "DE8937XXXXXXXXXXXX3000"
                          },
                          "bic": {
                            "type": "string",
                            "description": "Bank BIC/SWIFT code",
                            "example": "DEUTDEFF"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Name of the bank",
                            "example": "Deutsche Bank"
                          },
                          "bankAddress": {
                            "type": "string",
                            "description": "Address of the bank",
                            "example": "Taunusanlage 12"
                          },
                          "bankCity": {
                            "type": "string",
                            "description": "City of the bank",
                            "example": "Frankfurt am Main"
                          },
                          "bankZipcode": {
                            "type": "string",
                            "description": "Zipcode of the bank",
                            "example": "60325"
                          },
                          "bankCountry": {
                            "type": "string",
                            "enum": [
                              "US",
                              "CA",
                              "GB",
                              "DE",
                              "FR",
                              "AU",
                              "JP",
                              "KR",
                              "SE",
                              "NO",
                              "DK",
                              "FI",
                              "NL",
                              "BE",
                              "CH",
                              "AT",
                              "NZ",
                              "SG",
                              "IE",
                              "LU",
                              "PT",
                              "ES",
                              "IT",
                              "GR",
                              "CZ",
                              "PL",
                              "HU",
                              "SK",
                              "SI",
                              "EE",
                              "LT",
                              "LV",
                              "IS",
                              "MT",
                              "CY",
                              "HR",
                              "RO",
                              "BG",
                              "BR",
                              "AR",
                              "CL",
                              "MX",
                              "CO",
                              "PE",
                              "PA",
                              "UY",
                              "BO",
                              "ZA",
                              "NG",
                              "KE",
                              "GH",
                              "TZ",
                              "UG",
                              "RW",
                              "MW",
                              "ZM",
                              "BW",
                              "CD",
                              "CI",
                              "CM",
                              "IL",
                              "AE",
                              "QA",
                              "SA",
                              "OM",
                              "KW",
                              "BH",
                              "MY",
                              "PH",
                              "TH",
                              "VN",
                              "ID",
                              "IN",
                              "LK",
                              "NP",
                              "BD",
                              "PK",
                              "EG",
                              "MA",
                              "DZ",
                              "TN",
                              "JO",
                              "LB",
                              "TR",
                              "KH",
                              "MM",
                              "LA",
                              "EN",
                              "BT",
                              "VE",
                              "TW",
                              "HK",
                              "CN"
                            ],
                            "description": "Country of the bank",
                            "example": "DE"
                          },
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "SEPA"
                            ]
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount. It can be 0 for open-amount bank transfers where the sender chooses the final amount from their bank.",
                            "example": 1000
                          },
                          "referenceCode": {
                            "type": "string",
                            "minLength": 1,
                            "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order. The user must include this code when making the deposit to ensure accurate processing. In cases where the reference code is incorrect or missing, we manually match orders based on the sender's name and other available details. In case the deposit is not matched, we will mark the order as Reviewing and the system will require manual attention.",
                            "example": "REF123456"
                          },
                          "extraDepositMethods": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "methodType": {
                                  "type": "string",
                                  "enum": [
                                    "HOSTED_CHECKOUT"
                                  ],
                                  "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                                },
                                "url": {
                                  "type": "string",
                                  "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                                  "example": "https://checkout.example.com/pay/abc123"
                                },
                                "callbackUrl": {
                                  "type": "string",
                                  "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Payment reference for this method (equals the deposit/order reference)"
                                },
                                "amount": {
                                  "type": "number",
                                  "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                                },
                                "currency": {
                                  "type": "string",
                                  "description": "Currency of this method"
                                },
                                "expiresAt": {
                                  "type": "number",
                                  "description": "Unix ms after which `url` is no longer valid, when known"
                                }
                              },
                              "required": [
                                "methodType",
                                "url"
                              ],
                              "description": "An additional, optional way to pay this deposit"
                            },
                            "description": "Additional, optional ways to pay this same deposit (e.g. a hosted card page). The bank details above remain the primary method; ignore this field if you only support bank transfer."
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ],
                        "description": "Detailed information about a bank deposit, including the amount and a unique reference code for identification."
                      },
                      {
                        "type": "object",
                        "properties": {
                          "address": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Crypto wallet address",
                            "example": "0x1A2b3C4d5E6f7890AbCdEf1234567890AbCdEf12"
                          },
                          "network": {
                            "type": "string",
                            "enum": [
                              "MATIC",
                              "ETH",
                              "CELO",
                              "TRON",
                              "BTC",
                              "SOLANA",
                              "XRP",
                              "CARDANO",
                              "BSC",
                              "ARBITRUM",
                              "OPTIMISM",
                              "AVALANCHE",
                              "BASE"
                            ],
                            "description": "Network for the deposit for crypto deposits",
                            "examples": [
                              "ETH",
                              "MATIC",
                              "CELO"
                            ]
                          },
                          "memo": {
                            "type": "string",
                            "description": "Optional memo for the transaction",
                            "example": "Payment for services"
                          },
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "CRYPTO"
                            ]
                          },
                          "qrCode": {
                            "type": "string",
                            "description": "Base64-encoded QR image for the deposit address",
                            "example": "iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAIAAADTED8xAAABpklEQVR42u3BAQ0AAADCoPdPbQ8HFAAAAAAAAAAAAAAAAAA..."
                          },
                          "qrCodeUrl": {
                            "type": "string",
                            "format": "uri",
                            "description": "7-day signed GCS URL of the QR code PNG"
                          },
                          "qrCodeExpiresAt": {
                            "type": "number",
                            "description": "Unix timestamp (ms) when qrCodeUrl expires"
                          },
                          "receivingAddress": {
                            "type": "string",
                            "description": "The wallet address where funds should be sent",
                            "example": "0xAbCdEf0123456789AbCdEf0123456789AbCdEf01"
                          },
                          "tokenContract": {
                            "type": "string",
                            "description": "The ERC20 token contract address",
                            "example": "0x765DE816845861e75A25fCA122bb6898B8B1282a"
                          },
                          "decimals": {
                            "type": "number",
                            "description": "Token decimals (default 18)",
                            "example": 18
                          }
                        },
                        "required": [
                          "address",
                          "network",
                          "depositType"
                        ],
                        "description": "Crypto Deposit Information"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "base64QRCode": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Base64 encoded QR code",
                            "example": "base64QRCode"
                          },
                          "qrCodeString": {
                            "type": "string",
                            "minLength": 1,
                            "description": "The Pix copy-and-paste code (BR Code payload) the payer pastes into their bank app. Pass it through unchanged — it carries its own checksum.",
                            "example": "qrCodeString"
                          },
                          "referenceCode": {
                            "type": "string",
                            "minLength": 1,
                            "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order",
                            "example": "REF123456"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "exclusiveMinimum": true,
                            "description": "The monetary value to be deposited into the bank. This amount should be positive and accurately reflect the intended deposit.",
                            "example": 1000
                          },
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "PIX"
                            ]
                          }
                        },
                        "required": [
                          "base64QRCode",
                          "qrCodeString",
                          "referenceCode",
                          "amount",
                          "depositType"
                        ],
                        "description": "Pix Deposit Information"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "CREDIT_CARD"
                            ]
                          }
                        },
                        "required": [
                          "depositType"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "bankName": {
                            "type": "string",
                            "description": "Name of the bank (present when the rail provides it)"
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Name of the account holder (present when the rail provides it)"
                          },
                          "clabe": {
                            "type": "string",
                            "description": "CLABE number"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Bank account number (e.g. from the BANK_TRANSFER payment method)"
                          },
                          "reference": {
                            "type": "string",
                            "description": "Payment reference (e.g. from the BANK_TRANSFER payment method)"
                          },
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "CLABE"
                            ],
                            "description": "Type of the deposit"
                          }
                        },
                        "required": [
                          "clabe",
                          "depositType"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "url": {
                            "type": "string",
                            "description": "URL of the PSE payment"
                          },
                          "amountPrefilled": {
                            "type": "boolean",
                            "description": "Whether the payment page already carries the amount. When false or absent, the payer must enter it."
                          },
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "PSE"
                            ],
                            "description": "Type of the deposit"
                          }
                        },
                        "required": [
                          "url",
                          "depositType"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "BALANCE"
                            ]
                          }
                        },
                        "required": [
                          "depositType"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "PENDING"
                            ]
                          },
                          "currency": {
                            "type": "string",
                            "description": "Currency of the deposit"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the order/deposit"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount. It can be 0 while bank transfer details are open-amount or still being provisioned."
                          },
                          "extraDepositMethods": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "methodType": {
                                  "type": "string",
                                  "enum": [
                                    "HOSTED_CHECKOUT"
                                  ],
                                  "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                                },
                                "url": {
                                  "type": "string",
                                  "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                                  "example": "https://checkout.example.com/pay/abc123"
                                },
                                "callbackUrl": {
                                  "type": "string",
                                  "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Payment reference for this method (equals the deposit/order reference)"
                                },
                                "amount": {
                                  "type": "number",
                                  "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                                },
                                "currency": {
                                  "type": "string",
                                  "description": "Currency of this method"
                                },
                                "expiresAt": {
                                  "type": "number",
                                  "description": "Unix ms after which `url` is no longer valid, when known"
                                }
                              },
                              "required": [
                                "methodType",
                                "url"
                              ],
                              "description": "An additional, optional way to pay this deposit"
                            },
                            "description": "Additional ways to pay while the bank details are being provisioned (e.g. a hosted card page). Optional — ignore it and wait for the bank details if you only support bank transfer."
                          },
                          "pendingReason": {
                            "type": "string",
                            "enum": [
                              "collection_account_activating",
                              "accountless_per_account_corridor"
                            ],
                            "description": "Why the instructions are still being provisioned, when the reason is known. `collection_account_activating` means the collection account for this payer is being activated and payable details are expected shortly. `accountless_per_account_corridor` means this corridor collects only into a collection account dedicated to the paying account, this request names no account, and none can be created for it — so payable details will NOT arrive by waiting; create the deposit against an account instead. Absence never conveys timing on either surface: here it means only that no reason is classifiable, and an account-level deposit-method instruction never carries the field at all. Treat the values as an open set and ignore any you do not recognise."
                          }
                        },
                        "required": [
                          "depositType",
                          "currency",
                          "referenceCode",
                          "amount"
                        ],
                        "description": "Deposit details are being provisioned; poll the order/deposit or wait for webhook"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "IMPS"
                            ]
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Name of the bank"
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Name of the account holder"
                          },
                          "ifsc": {
                            "type": "string",
                            "description": "ifsc number"
                          },
                          "type": {
                            "type": "string",
                            "description": "Type of the deposit"
                          },
                          "branch": {
                            "type": "string",
                            "description": "Branch of the bank"
                          },
                          "bank": {
                            "type": "string",
                            "description": "Bank of the account"
                          },
                          "otp": {
                            "type": "string",
                            "description": "OTP of the deposit"
                          },
                          "bankNotes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "number",
                                  "description": "Type of note: -1 for warning, 1 for info"
                                },
                                "msg": {
                                  "type": "string",
                                  "description": "Message content"
                                }
                              },
                              "required": [
                                "type",
                                "msg"
                              ]
                            },
                            "description": "Additional bank instructions"
                          }
                        },
                        "required": [
                          "depositType",
                          "accountNumber",
                          "bankName",
                          "accountHolder",
                          "ifsc",
                          "type",
                          "branch",
                          "bank",
                          "otp"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "UPI"
                            ]
                          },
                          "vpa": {
                            "type": "string",
                            "description": "Virtual Payment Address"
                          },
                          "name": {
                            "type": "string",
                            "description": "Name of the account holder"
                          },
                          "otp": {
                            "type": "string",
                            "description": "OTP for the transaction"
                          },
                          "paymentLink": {
                            "type": "string",
                            "description": "Payment link"
                          },
                          "upiNotes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "number",
                                  "description": "Type of note: -1 for warning, 1 for info"
                                },
                                "msg": {
                                  "type": "string",
                                  "description": "Message content"
                                }
                              },
                              "required": [
                                "type",
                                "msg"
                              ]
                            },
                            "description": "Additional UPI instructions"
                          }
                        },
                        "required": [
                          "depositType",
                          "vpa",
                          "name",
                          "otp",
                          "paymentLink"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "AED_BANK_TRANSFER"
                            ]
                          },
                          "iban": {
                            "type": "string",
                            "description": "International Bank Account Number"
                          },
                          "name": {
                            "type": "string",
                            "description": "Name of the account holder"
                          },
                          "bank": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "type": {
                            "type": "string",
                            "description": "Account type"
                          },
                          "address": {
                            "type": "string",
                            "description": "Bank address"
                          },
                          "email": {
                            "type": "string",
                            "description": "Contact email"
                          },
                          "phoneNumber": {
                            "type": "string",
                            "description": "Contact phone number"
                          },
                          "transferCode": {
                            "type": "string",
                            "description": "Transfer code"
                          },
                          "poBox": {
                            "type": "string",
                            "description": "P.O. Box"
                          },
                          "otp": {
                            "type": "string",
                            "description": "OTP for the transaction"
                          },
                          "bankNotes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "number",
                                  "description": "Type of note: -1 for warning, 1 for info"
                                },
                                "msg": {
                                  "type": "string",
                                  "description": "Message content"
                                }
                              },
                              "required": [
                                "type",
                                "msg"
                              ]
                            },
                            "description": "Additional bank instructions"
                          }
                        },
                        "required": [
                          "depositType",
                          "iban",
                          "name",
                          "bank",
                          "type",
                          "address",
                          "email",
                          "phoneNumber",
                          "transferCode",
                          "poBox",
                          "otp"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "SPEI"
                            ]
                          },
                          "clabe": {
                            "type": "string",
                            "description": "CLABE number"
                          },
                          "name": {
                            "type": "string",
                            "description": "Name of the account holder"
                          },
                          "bank": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankNotes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "number",
                                  "description": "Type of note: -1 for warning, 1 for info"
                                },
                                "msg": {
                                  "type": "string",
                                  "description": "Message content"
                                }
                              },
                              "required": [
                                "type",
                                "msg"
                              ]
                            },
                            "description": "Additional bank instructions"
                          }
                        },
                        "required": [
                          "depositType",
                          "clabe",
                          "name",
                          "bank"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "TRY_BANK_TRANSFER"
                            ]
                          },
                          "iban": {
                            "type": "string",
                            "description": "International Bank Account Number"
                          },
                          "name": {
                            "type": "string",
                            "description": "Name of the account holder"
                          },
                          "bank": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "otp": {
                            "type": "string",
                            "description": "OTP for the transaction"
                          },
                          "bankNotes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "number",
                                  "description": "Type of note: -1 for warning, 1 for info"
                                },
                                "msg": {
                                  "type": "string",
                                  "description": "Message content"
                                }
                              },
                              "required": [
                                "type",
                                "msg"
                              ]
                            },
                            "description": "Additional bank instructions"
                          }
                        },
                        "required": [
                          "depositType",
                          "iban",
                          "name",
                          "bank",
                          "otp"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "IDR_BANK_TRANSFER"
                            ]
                          },
                          "virtualAccount": {
                            "type": "string",
                            "description": "Virtual account number"
                          },
                          "name": {
                            "type": "string",
                            "description": "Name of the account holder"
                          },
                          "bank": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankNotes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "number",
                                  "description": "Type of note: -1 for warning, 1 for info"
                                },
                                "msg": {
                                  "type": "string",
                                  "description": "Message content"
                                }
                              },
                              "required": [
                                "type",
                                "msg"
                              ]
                            },
                            "description": "Additional bank instructions"
                          }
                        },
                        "required": [
                          "depositType",
                          "virtualAccount",
                          "name",
                          "bank"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "THAI_QR"
                            ]
                          },
                          "qrCode": {
                            "type": "string",
                            "description": "QR code"
                          },
                          "otp": {
                            "type": "string",
                            "description": "OTP for the transaction"
                          },
                          "bankNotes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "number",
                                  "description": "Type of note: -1 for warning, 1 for info"
                                },
                                "msg": {
                                  "type": "string",
                                  "description": "Message content"
                                }
                              },
                              "required": [
                                "type",
                                "msg"
                              ]
                            },
                            "description": "Additional bank instructions"
                          }
                        },
                        "required": [
                          "depositType",
                          "qrCode",
                          "otp"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "VIET_QR"
                            ]
                          },
                          "qrCode": {
                            "type": "string",
                            "description": "QR code"
                          },
                          "otp": {
                            "type": "string",
                            "description": "OTP for the transaction"
                          },
                          "bankNotes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "number",
                                  "description": "Type of note: -1 for warning, 1 for info"
                                },
                                "msg": {
                                  "type": "string",
                                  "description": "Message content"
                                }
                              },
                              "required": [
                                "type",
                                "msg"
                              ]
                            },
                            "description": "Additional bank instructions"
                          }
                        },
                        "required": [
                          "depositType",
                          "qrCode",
                          "otp"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "GCASH"
                            ]
                          },
                          "qrCode": {
                            "type": "string",
                            "description": "QR code"
                          },
                          "otp": {
                            "type": "string",
                            "description": "OTP for the transaction"
                          },
                          "bankNotes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "number",
                                  "description": "Type of note: -1 for warning, 1 for info"
                                },
                                "msg": {
                                  "type": "string",
                                  "description": "Message content"
                                }
                              },
                              "required": [
                                "type",
                                "msg"
                              ]
                            },
                            "description": "Additional bank instructions"
                          }
                        },
                        "required": [
                          "depositType",
                          "qrCode",
                          "otp"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "ARGENTINA_BANK_TRANSFER"
                            ]
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Account number"
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "accountNumber"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "ACH_US"
                            ]
                          },
                          "routingNumber": {
                            "type": "string",
                            "description": "US bank ABA routing number"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "US bank account number"
                          },
                          "beneficiaryName": {
                            "type": "string",
                            "description": "Beneficiary name on the account"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Name of the bank"
                          },
                          "bankAddress": {
                            "type": "string",
                            "description": "Address of the bank"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names (e.g. ACH, Wire)"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount in USD"
                          },
                          "referenceCode": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Reference code to include in the wire/ACH transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "routingNumber",
                          "accountNumber",
                          "beneficiaryName",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "ACH_PULL"
                            ]
                          }
                        },
                        "required": [
                          "depositType"
                        ],
                        "description": "Funds are pulled from the holder's own linked US bank account; no transfer instructions apply"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "LOCALBANK"
                            ],
                            "description": "Deprecated generic local-bank payin type. Superseded by the corridor-specific deposit types (e.g. SEPA, ACH_US, GBP_BANK_TRANSFER, CLABE/SPEI, PIX, ARGENTINA_BANK_TRANSFER, BANK_DEPOSIT_<CC>). Still returned on some corridors and on historical records, so integrators must continue to handle it. Discover the applicable per-currency method via GET /v1/currencies/{currency}/payin-schema.",
                            "deprecated": true
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "GBP_BANK_TRANSFER"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "UK bank account number"
                          },
                          "sortCode": {
                            "type": "string",
                            "description": "UK sort code"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Name of the bank"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names (e.g. Faster Payments, CHAPS, BACS)"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount in GBP"
                          },
                          "referenceCode": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Reference code to include in the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "accountHolder",
                          "accountNumber",
                          "sortCode",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_COL"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_CL"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_BO"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_BR"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_NG"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_KE"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_GH"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_ZA"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_TZ"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_UG"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_RW"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_MW"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_ZM"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_BW"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_CD"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_XOF"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_XAF"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_NG"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_KE"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_GH"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_ZA"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_TZ"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_UG"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_RW"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_MW"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_ZM"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_BW"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_CD"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_XOF"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_XAF"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Expected deposit amount"
                          },
                          "referenceCode": {
                            "type": "string",
                            "description": "Reference code for the transfer"
                          }
                        },
                        "required": [
                          "depositType",
                          "amount",
                          "referenceCode"
                        ]
                      }
                    ],
                    "description": "Details of the deposit",
                    "examples": [
                      {
                        "accountHolder": "John Doe",
                        "iban": "DE8937XXXXXXXXXXXX3000",
                        "bic": "COBADEFFXXX",
                        "bankName": "Commerzbank",
                        "bankAddress": "Mainzer Landstrasse 151-153",
                        "bankCity": "Frankfurt",
                        "bankZipcode": "60327",
                        "bankCountry": "DE",
                        "amount": 1000,
                        "referenceCode": "ABC123",
                        "depositType": "SEPA"
                      }
                    ]
                  },
                  "depositInfoPending": {
                    "type": "boolean",
                    "description": "True while the payment instructions are still being prepared. Poll this deposit until it is false (or absent) before showing the instructions to the payer."
                  },
                  "complianceHold": {
                    "type": "object",
                    "properties": {
                      "reason": {
                        "type": "string",
                        "enum": [
                          "screening",
                          "fiat_monitoring"
                        ],
                        "description": "Compliance hold reason"
                      }
                    },
                    "required": [
                      "reason"
                    ],
                    "description": "Present while the inbound transfer funding this deposit is held in provider compliance review. The deposit stays Reviewing (amount 0, never credited) until the hold clears (promote to Received) or the transfer is rejected/returned (terminalize)."
                  }
                },
                "required": [
                  "depositId",
                  "createdAt",
                  "expectedAmount",
                  "amount",
                  "currency",
                  "fee",
                  "expectedFee",
                  "feeCurrency",
                  "status",
                  "depositInfo"
                ],
                "description": "Data for deposit completed event",
                "example": {
                  "depositId": "deposit-123",
                  "userData": {
                    "userType": "individual",
                    "firstName": "John",
                    "lastName": "Doe",
                    "userEmail": "customer@example.com",
                    "address": "123 Main St, Anytown, ES",
                    "taxId": "123-45-6789",
                    "country": "ES"
                  },
                  "createdAt": 1723027132,
                  "expectedAmount": 1000,
                  "amount": 1000,
                  "currency": "EUR",
                  "fee": 10,
                  "expectedFee": 10,
                  "feeCurrency": "EUR",
                  "status": "Success",
                  "depositInfo": {
                    "accountHolder": "John Doe",
                    "iban": "DE8937XXXXXXXXXXXX3000",
                    "bic": "COBADEFFXXX",
                    "bankName": "Example Bank",
                    "bankAddress": "1 Example Street",
                    "bankCity": "Example City",
                    "bankZipcode": "00000",
                    "bankCountry": "DE",
                    "amount": 1000,
                    "referenceCode": "ABC123",
                    "depositType": "SEPA"
                  }
                }
              },
              {
                "type": "object",
                "properties": {
                  "methodId": {
                    "type": "string",
                    "description": "Deposit method id"
                  },
                  "methodType": {
                    "type": "string",
                    "enum": [
                      "crypto",
                      "fiat"
                    ],
                    "description": "Normalized deposit method type"
                  },
                  "currency": {
                    "type": "string",
                    "description": "Currency of the deposit method"
                  },
                  "network": {
                    "type": "string",
                    "description": "Network for crypto deposit methods"
                  },
                  "status": {
                    "type": "string",
                    "enum": [
                      "ACTIVE",
                      "PENDING"
                    ],
                    "description": "Normalized deposit method status"
                  },
                  "depositInfo": {
                    "oneOf": [
                      {
                        "type": "object",
                        "properties": {
                          "address": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Crypto wallet address",
                            "example": "0x1A2b3C4d5E6f7890AbCdEf1234567890AbCdEf12"
                          },
                          "network": {
                            "type": "string",
                            "enum": [
                              "MATIC",
                              "ETH",
                              "CELO",
                              "TRON",
                              "BTC",
                              "SOLANA",
                              "XRP",
                              "CARDANO",
                              "BSC",
                              "ARBITRUM",
                              "OPTIMISM",
                              "AVALANCHE",
                              "BASE"
                            ],
                            "description": "Network for the deposit for crypto deposits",
                            "examples": [
                              "ETH",
                              "MATIC",
                              "CELO"
                            ]
                          },
                          "memo": {
                            "type": "string",
                            "description": "Optional memo for the transaction",
                            "example": "Payment for services"
                          },
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "CRYPTO"
                            ]
                          },
                          "qrCode": {
                            "type": "string",
                            "description": "Base64-encoded QR image for the deposit address",
                            "example": "iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAIAAADTED8xAAABpklEQVR42u3BAQ0AAADCoPdPbQ8HFAAAAAAAAAAAAAAAAAA..."
                          },
                          "qrCodeUrl": {
                            "type": "string",
                            "format": "uri",
                            "description": "7-day signed GCS URL of the QR code PNG"
                          },
                          "qrCodeExpiresAt": {
                            "type": "number",
                            "description": "Unix timestamp (ms) when qrCodeUrl expires"
                          },
                          "receivingAddress": {
                            "type": "string",
                            "description": "The wallet address where funds should be sent",
                            "example": "0xAbCdEf0123456789AbCdEf0123456789AbCdEf01"
                          },
                          "tokenContract": {
                            "type": "string",
                            "description": "The ERC20 token contract address",
                            "example": "0x765DE816845861e75A25fCA122bb6898B8B1282a"
                          },
                          "decimals": {
                            "type": "number",
                            "description": "Token decimals (default 18)",
                            "example": 18
                          }
                        },
                        "required": [
                          "address",
                          "network",
                          "depositType"
                        ],
                        "description": "Crypto Deposit Information"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "SEPA"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "iban": {
                            "type": "string",
                            "description": "SEPA Bank Account Number"
                          },
                          "bic": {
                            "type": "string",
                            "description": "Bank BIC/SWIFT code"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Name of the bank"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "referenceCode": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Payment reference the payer must include in the transfer. Present when this account is a shared collection account, where the reference (not the account number) is what attributes an incoming payment. Absent when the account is dedicated to this deposit method, in which case the coordinates alone identify it. When present it is mandatory: a transfer that omits it cannot be attributed automatically."
                          }
                        },
                        "required": [
                          "depositType",
                          "iban"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "ACH_US"
                            ]
                          },
                          "routingNumber": {
                            "type": "string",
                            "description": "US bank ABA routing number"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "US bank account number"
                          },
                          "beneficiaryName": {
                            "type": "string",
                            "description": "Beneficiary name on the account"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Name of the bank"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names (e.g. ACH, Wire)"
                          }
                        },
                        "required": [
                          "depositType",
                          "routingNumber",
                          "accountNumber",
                          "beneficiaryName"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "GBP_BANK_TRANSFER"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "UK bank account number"
                          },
                          "sortCode": {
                            "type": "string",
                            "description": "UK sort code"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Name of the bank"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names (e.g. Faster Payments, CHAPS, BACS)"
                          }
                        },
                        "required": [
                          "depositType",
                          "accountNumber",
                          "sortCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "LOCALBANK"
                            ]
                          },
                          "accountHolder": {
                            "type": "string",
                            "description": "Account holder name"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "Local bank account number"
                          },
                          "bankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "bankCountry": {
                            "type": "string",
                            "description": "ISO-3166 country code"
                          },
                          "routingCodes": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "Routing code value"
                                }
                              },
                              "required": [
                                "type",
                                "value"
                              ]
                            },
                            "description": "Routing identifiers (e.g. sort code, routing number)"
                          },
                          "schemes": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Accepted payment scheme names for this account"
                          }
                        },
                        "required": [
                          "depositType"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "PIX"
                            ]
                          },
                          "qrCodeString": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Pix copia-e-cola payload (EMV BR Code text) the payer pastes into their bank app; the payer enters the amount"
                          },
                          "base64QRCode": {
                            "type": "string",
                            "minLength": 1,
                            "description": "The same payload rendered as a PNG, raw base64 (no data-URI prefix)"
                          }
                        },
                        "required": [
                          "depositType",
                          "qrCodeString",
                          "base64QRCode"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "PENDING"
                            ]
                          },
                          "currency": {
                            "type": "string",
                            "description": "Currency of the deposit method"
                          }
                        },
                        "required": [
                          "depositType",
                          "currency"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "url": {
                            "type": "string",
                            "description": "URL of the PSE payment"
                          },
                          "amountPrefilled": {
                            "type": "boolean",
                            "description": "Whether the payment page already carries the amount. When false or absent, the payer must enter it."
                          },
                          "depositType": {
                            "type": "string",
                            "enum": [
                              "PSE"
                            ],
                            "description": "Type of the deposit"
                          }
                        },
                        "required": [
                          "url",
                          "depositType"
                        ]
                      }
                    ],
                    "description": "Deposit instructions for the method when available"
                  },
                  "createdAt": {
                    "type": "number",
                    "description": "Creation timestamp"
                  },
                  "updatedAt": {
                    "type": "number",
                    "description": "Last update timestamp"
                  },
                  "accountId": {
                    "type": "string",
                    "description": "Account id that owns the deposit method"
                  }
                },
                "required": [
                  "methodId",
                  "methodType",
                  "currency",
                  "status",
                  "accountId"
                ],
                "description": "Data for deposit_method_created / deposit_method_activated events",
                "example": {
                  "methodId": "dm_abc123",
                  "accountId": "customer@example.com",
                  "methodType": "fiat",
                  "currency": "EUR",
                  "status": "ACTIVE",
                  "depositInfo": {
                    "depositType": "SEPA",
                    "iban": "DE8937XXXXXXXXXXXX3000",
                    "bic": "COBADEFFXXX",
                    "accountHolder": "John Doe"
                  },
                  "createdAt": 1723027132,
                  "updatedAt": 1723027132
                }
              },
              {
                "type": "object",
                "properties": {
                  "tradeId": {
                    "type": "string",
                    "description": "ID of the trade",
                    "example": "123e4567-e89b-12d3-a456-426614174000"
                  },
                  "createdAt": {
                    "type": "number",
                    "description": "Creation time of the trade",
                    "example": 1723027132
                  },
                  "pair": {
                    "type": "string",
                    "description": "Asset pair to trade",
                    "example": "BTC/EUR"
                  },
                  "tradeType": {
                    "type": "string",
                    "enum": [
                      "buy",
                      "sell"
                    ],
                    "description": "Type of trade"
                  },
                  "volume": {
                    "type": "number",
                    "minimum": 0,
                    "exclusiveMinimum": true,
                    "description": "Order quantity in lots",
                    "example": 0.5
                  },
                  "price": {
                    "type": "number",
                    "minimum": 0,
                    "exclusiveMinimum": true,
                    "description": "Price at which to place the order based on the pair",
                    "example": 30000
                  },
                  "conversionRate": {
                    "type": "number",
                    "minimum": 0,
                    "exclusiveMinimum": true,
                    "description": "Conversion rate at which to place the order based on the pair",
                    "example": 30000
                  },
                  "fee": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Fee for the trade",
                    "example": 0.1
                  },
                  "feeCurrency": {
                    "type": "string",
                    "description": "Currency of the fee",
                    "example": "EUR"
                  },
                  "userEmail": {
                    "type": "string",
                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                    "description": "Email of the user making the trade",
                    "example": "user@example.com"
                  }
                },
                "required": [
                  "tradeId",
                  "createdAt",
                  "pair",
                  "tradeType",
                  "volume",
                  "fee",
                  "feeCurrency",
                  "userEmail"
                ],
                "description": "Data for trade completed event"
              },
              {
                "type": "object",
                "properties": {
                  "withdrawalId": {
                    "anyOf": [
                      {
                        "type": "string",
                        "minLength": 12,
                        "maxLength": 12,
                        "pattern": "^[A-Z0-9]{12}$",
                        "examples": [
                          "01CLFXMT67II",
                          "2R7E5Y5KFXP8",
                          "4FWWRE3Y2URM"
                        ]
                      },
                      {
                        "type": "string",
                        "format": "uuid"
                      }
                    ],
                    "description": "ID of the withdrawal"
                  },
                  "userData": {
                    "oneOf": [
                      {
                        "type": "object",
                        "properties": {
                          "userType": {
                            "type": "string",
                            "enum": [
                              "individual"
                            ]
                          },
                          "firstName": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 50,
                            "description": "First name of the user making the deposit (or representative for business)",
                            "examples": [
                              "John",
                              "Alice",
                              "Bob"
                            ]
                          },
                          "lastName": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "Last name of the user making the deposit (or representative for business)",
                            "examples": [
                              "Doe",
                              "Smith",
                              "Johnson"
                            ]
                          },
                          "userEmail": {
                            "type": "string",
                            "maxLength": 254,
                            "format": "email",
                            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                            "description": "Email of the user making the deposit",
                            "examples": [
                              "user@virtuabroker.com",
                              "john.doe@example.com",
                              "alice@example.com"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "maxLength": 150,
                            "description": "Address of the user making the deposit",
                            "examples": [
                              "123 Main St, Anytown, ES",
                              "456 Elm St, Anytown, ES",
                              "789 Oak St, Anytown, ES"
                            ]
                          },
                          "taxDocumentType": {
                            "type": "string",
                            "maxLength": 50,
                            "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                            "examples": [
                              "CC",
                              "NIT",
                              "CE",
                              "NIF",
                              "Other"
                            ]
                          },
                          "taxId": {
                            "type": "string",
                            "maxLength": 30,
                            "description": "Tax ID of the user making the deposit",
                            "examples": [
                              "123-45-6789",
                              "987-65-4321",
                              "111-22-3333"
                            ]
                          },
                          "country": {
                            "type": "string",
                            "enum": [
                              "US",
                              "CA",
                              "GB",
                              "DE",
                              "FR",
                              "AU",
                              "JP",
                              "KR",
                              "SE",
                              "NO",
                              "DK",
                              "FI",
                              "NL",
                              "BE",
                              "CH",
                              "AT",
                              "NZ",
                              "SG",
                              "IE",
                              "LU",
                              "PT",
                              "ES",
                              "IT",
                              "GR",
                              "CZ",
                              "PL",
                              "HU",
                              "SK",
                              "SI",
                              "EE",
                              "LT",
                              "LV",
                              "IS",
                              "MT",
                              "CY",
                              "HR",
                              "RO",
                              "BG",
                              "BR",
                              "AR",
                              "CL",
                              "MX",
                              "CO",
                              "PE",
                              "PA",
                              "UY",
                              "BO",
                              "ZA",
                              "NG",
                              "KE",
                              "GH",
                              "TZ",
                              "UG",
                              "RW",
                              "MW",
                              "ZM",
                              "BW",
                              "CD",
                              "CI",
                              "CM",
                              "IL",
                              "AE",
                              "QA",
                              "SA",
                              "OM",
                              "KW",
                              "BH",
                              "MY",
                              "PH",
                              "TH",
                              "VN",
                              "ID",
                              "IN",
                              "LK",
                              "NP",
                              "BD",
                              "PK",
                              "EG",
                              "MA",
                              "DZ",
                              "TN",
                              "JO",
                              "LB",
                              "TR",
                              "KH",
                              "MM",
                              "LA",
                              "EN",
                              "BT",
                              "VE",
                              "TW",
                              "HK",
                              "CN"
                            ],
                            "description": "Country code of the user making the deposit",
                            "examples": [
                              "ES",
                              "US",
                              "GB"
                            ]
                          },
                          "state": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "State of the user making the deposit",
                            "examples": [
                              "Madrid",
                              "New York",
                              "London"
                            ]
                          },
                          "postalCode": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 30,
                            "description": "Postal code of the user making the deposit",
                            "examples": [
                              "12345",
                              "67890",
                              "abcde"
                            ]
                          },
                          "city": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "City of the user making the deposit",
                            "examples": [
                              "Madrid",
                              "New York",
                              "London"
                            ]
                          },
                          "dob": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 30,
                            "description": "Date of birth of the user making the deposit",
                            "examples": [
                              "1990-01-01",
                              "1995-05-15",
                              "1988-12-31"
                            ]
                          },
                          "phoneNumber": {
                            "type": "string",
                            "maxLength": 30,
                            "description": "Phone number of the user making the deposit",
                            "examples": [
                              "+447700900123",
                              "+447700900456",
                              "+447700900789"
                            ]
                          },
                          "kycId": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 300,
                            "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                            "examples": [
                              "kyc-12345",
                              "kyc-67890",
                              "kyc-abcde"
                            ]
                          },
                          "activity": {
                            "type": "string",
                            "description": "Activity of the user making the deposit",
                            "examples": [
                              "worker",
                              "business",
                              "student"
                            ]
                          }
                        },
                        "required": [
                          "userType",
                          "firstName",
                          "userEmail",
                          "country"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "userType": {
                            "type": "string",
                            "enum": [
                              "business"
                            ]
                          },
                          "businessName": {
                            "type": "string",
                            "maxLength": 150,
                            "description": "Business name (required when userType is business)",
                            "examples": [
                              "Acme Corp",
                              "Tech Solutions Inc",
                              "Global Services Ltd"
                            ]
                          },
                          "firstName": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 50,
                            "description": "First name of the user making the deposit (or representative for business)",
                            "examples": [
                              "John",
                              "Alice",
                              "Bob"
                            ]
                          },
                          "userEmail": {
                            "type": "string",
                            "maxLength": 254,
                            "format": "email",
                            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                            "description": "Email of the user making the deposit",
                            "examples": [
                              "user@virtuabroker.com",
                              "john.doe@example.com",
                              "alice@example.com"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "maxLength": 150,
                            "description": "Address of the user making the deposit",
                            "examples": [
                              "123 Main St, Anytown, ES",
                              "456 Elm St, Anytown, ES",
                              "789 Oak St, Anytown, ES"
                            ]
                          },
                          "taxDocumentType": {
                            "type": "string",
                            "maxLength": 50,
                            "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                            "examples": [
                              "CC",
                              "NIT",
                              "CE",
                              "NIF",
                              "Other"
                            ]
                          },
                          "taxId": {
                            "type": "string",
                            "maxLength": 30,
                            "description": "Tax ID of the user making the deposit",
                            "examples": [
                              "123-45-6789",
                              "987-65-4321",
                              "111-22-3333"
                            ]
                          },
                          "country": {
                            "type": "string",
                            "enum": [
                              "US",
                              "CA",
                              "GB",
                              "DE",
                              "FR",
                              "AU",
                              "JP",
                              "KR",
                              "SE",
                              "NO",
                              "DK",
                              "FI",
                              "NL",
                              "BE",
                              "CH",
                              "AT",
                              "NZ",
                              "SG",
                              "IE",
                              "LU",
                              "PT",
                              "ES",
                              "IT",
                              "GR",
                              "CZ",
                              "PL",
                              "HU",
                              "SK",
                              "SI",
                              "EE",
                              "LT",
                              "LV",
                              "IS",
                              "MT",
                              "CY",
                              "HR",
                              "RO",
                              "BG",
                              "BR",
                              "AR",
                              "CL",
                              "MX",
                              "CO",
                              "PE",
                              "PA",
                              "UY",
                              "BO",
                              "ZA",
                              "NG",
                              "KE",
                              "GH",
                              "TZ",
                              "UG",
                              "RW",
                              "MW",
                              "ZM",
                              "BW",
                              "CD",
                              "CI",
                              "CM",
                              "IL",
                              "AE",
                              "QA",
                              "SA",
                              "OM",
                              "KW",
                              "BH",
                              "MY",
                              "PH",
                              "TH",
                              "VN",
                              "ID",
                              "IN",
                              "LK",
                              "NP",
                              "BD",
                              "PK",
                              "EG",
                              "MA",
                              "DZ",
                              "TN",
                              "JO",
                              "LB",
                              "TR",
                              "KH",
                              "MM",
                              "LA",
                              "EN",
                              "BT",
                              "VE",
                              "TW",
                              "HK",
                              "CN"
                            ],
                            "description": "Country code of the user making the deposit",
                            "examples": [
                              "ES",
                              "US",
                              "GB"
                            ]
                          },
                          "state": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "State of the user making the deposit",
                            "examples": [
                              "Madrid",
                              "New York",
                              "London"
                            ]
                          },
                          "postalCode": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 30,
                            "description": "Postal code of the user making the deposit",
                            "examples": [
                              "12345",
                              "67890",
                              "abcde"
                            ]
                          },
                          "city": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "City of the user making the deposit",
                            "examples": [
                              "Madrid",
                              "New York",
                              "London"
                            ]
                          },
                          "dob": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 30,
                            "description": "Date of birth of the user making the deposit",
                            "examples": [
                              "1990-01-01",
                              "1995-05-15",
                              "1988-12-31"
                            ]
                          },
                          "phoneNumber": {
                            "type": "string",
                            "maxLength": 30,
                            "description": "Phone number of the user making the deposit",
                            "examples": [
                              "+447700900123",
                              "+447700900456",
                              "+447700900789"
                            ]
                          },
                          "kycId": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 300,
                            "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                            "examples": [
                              "kyc-12345",
                              "kyc-67890",
                              "kyc-abcde"
                            ]
                          },
                          "activity": {
                            "type": "string",
                            "description": "Activity of the user making the deposit",
                            "examples": [
                              "worker",
                              "business",
                              "student"
                            ]
                          }
                        },
                        "required": [
                          "userType",
                          "businessName",
                          "firstName",
                          "userEmail",
                          "country"
                        ]
                      }
                    ],
                    "description": "User data for the withdrawal"
                  },
                  "createdAt": {
                    "type": "number",
                    "description": "Creation time of the withdrawal",
                    "example": 1723027132
                  },
                  "updatedAt": {
                    "type": "number",
                    "description": "Last update time of the withdrawal",
                    "example": 1723027132
                  },
                  "userEmail": {
                    "type": "string",
                    "format": "email",
                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                    "description": "Email of the user making the request",
                    "example": "user@example.com"
                  },
                  "amount": {
                    "type": "number",
                    "description": "Amount to be withdrawn. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
                    "example": 1000
                  },
                  "currency": {
                    "type": "string",
                    "description": "Currency of the withdrawal",
                    "example": "EUR"
                  },
                  "fee": {
                    "type": "number",
                    "description": "Fee for the withdrawal. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
                    "example": 10
                  },
                  "feeCurrency": {
                    "type": "string",
                    "description": "Currency of the fee",
                    "example": "EUR"
                  },
                  "destinationTransferData": {
                    "oneOf": [
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "BALANCE"
                            ]
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "Balance transfer details",
                        "title": "Balance"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "iban": {
                            "type": "string",
                            "description": "IBAN number"
                          },
                          "bic": {
                            "type": "string",
                            "description": "BIC number (optional)"
                          },
                          "country": {
                            "type": "string",
                            "description": "Country code"
                          },
                          "accountType": {
                            "type": "string",
                            "enum": [
                              "PERSONAL",
                              "BUSINESS"
                            ],
                            "default": "PERSONAL",
                            "description": "Account type (optional)"
                          },
                          "city": {
                            "type": "string",
                            "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                          },
                          "postalCode": {
                            "type": "string",
                            "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                          },
                          "address": {
                            "type": "string",
                            "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "SEPA"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "iban",
                          "country",
                          "type"
                        ],
                        "description": "SEPA transfer details",
                        "title": "SEPA"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "UK bank account number"
                          },
                          "sortCode": {
                            "type": "string",
                            "description": "UK sort code"
                          },
                          "country": {
                            "type": "string",
                            "enum": [
                              "GB"
                            ],
                            "default": "GB",
                            "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                          },
                          "accountType": {
                            "type": "string",
                            "enum": [
                              "PERSONAL",
                              "BUSINESS"
                            ],
                            "default": "PERSONAL",
                            "description": "Account type (optional)"
                          },
                          "city": {
                            "type": "string",
                            "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                          },
                          "postalCode": {
                            "type": "string",
                            "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                          },
                          "address": {
                            "type": "string",
                            "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "GBP_BANK_TRANSFER"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "accountNumber",
                          "sortCode",
                          "type"
                        ],
                        "description": "GBP domestic bank transfer details",
                        "title": "BankDepositGB"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "US bank account number"
                          },
                          "routingNumber": {
                            "type": "string",
                            "description": "US ABA routing number"
                          },
                          "country": {
                            "type": "string",
                            "enum": [
                              "US"
                            ],
                            "default": "US",
                            "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                          },
                          "accountType": {
                            "type": "string",
                            "enum": [
                              "PERSONAL",
                              "BUSINESS"
                            ],
                            "default": "PERSONAL",
                            "description": "Account type (optional)"
                          },
                          "bankAccountType": {
                            "type": "string",
                            "enum": [
                              "CHECKING",
                              "SAVINGS"
                            ],
                            "default": "CHECKING",
                            "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                          },
                          "city": {
                            "type": "string",
                            "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                          },
                          "postalCode": {
                            "type": "string",
                            "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                          },
                          "state": {
                            "type": "string",
                            "pattern": "^[A-Z]{2}$",
                            "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                          },
                          "address": {
                            "type": "string",
                            "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "ACH_US"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "accountNumber",
                          "routingNumber",
                          "state",
                          "type"
                        ],
                        "description": "USD ACH transfer details",
                        "title": "AchUS"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "linkedBankAccount"
                            ]
                          },
                          "accountLinkId": {
                            "type": "string",
                            "pattern": "^alnk_[0-9a-f]{24}$",
                            "description": "Identifier of one of the account holder own linked bank accounts",
                            "examples": [
                              "alnk_0123456789abcdef01234567"
                            ]
                          }
                        },
                        "required": [
                          "type",
                          "accountLinkId"
                        ],
                        "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                        "title": "LinkedBankAccount",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "ETH"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "ETH destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "ETH"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "MATIC"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "MATIC destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "MATIC"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "SOL"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "SOL destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "\\S"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "\\S"
                              }
                            }
                          }
                        ],
                        "title": "SOL"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "TRON"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "TRON destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "\\S"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "\\S"
                              }
                            }
                          }
                        ],
                        "title": "TRON"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "CELO"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "CELO destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "CELO"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "BTC"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "BTC destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "\\S"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "\\S"
                              }
                            }
                          }
                        ],
                        "title": "BTC"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "SOLANA"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "SOLANA destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "\\S"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "\\S"
                              }
                            }
                          }
                        ],
                        "title": "SOLANA"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "XRP"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "XRP destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "\\S"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "\\S"
                              }
                            }
                          }
                        ],
                        "title": "XRP"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "CARDANO"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "CARDANO destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "\\S"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "\\S"
                              }
                            }
                          }
                        ],
                        "title": "CARDANO"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "BSC"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "BSC destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "BSC"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "ARBITRUM"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "ARBITRUM destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "ARBITRUM"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "OPTIMISM"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "OPTIMISM destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "OPTIMISM"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "AVALANCHE"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "AVALANCHE destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "AVALANCHE"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "BASE"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "BASE destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "BASE"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_COL"
                            ]
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "Recipient ID document number. Required when creating or updating a destination."
                          },
                          "destinationDocumentType": {
                            "type": "string",
                            "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                        "title": "Bank Deposit COL"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "brebKey": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Bre-B key (llave) that identifies the recipient account"
                          },
                          "email": {
                            "type": "string",
                            "description": "Recipient email (optional contact for the Bre-B rail)"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Recipient phone number (optional contact for the Bre-B rail)"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BRE_B_COP"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "brebKey",
                          "type"
                        ],
                        "description": "Colombian Bre-B payout details",
                        "title": "Bre-B COP"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "pattern": "^\\d{4}$",
                            "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                          },
                          "destinationBankAccountNumber": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Recipient bank account number"
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                          },
                          "destinationDocumentType": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Recipient ID document number"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "ACH_COP"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankCode",
                          "destinationBankAccountNumber",
                          "destinationBankAccountType",
                          "destinationDocumentType",
                          "destinationTaxId",
                          "type"
                        ],
                        "description": "Colombian ACH payout details",
                        "title": "ACH COP"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (unused for TWD — no network discovery)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "minLength": 2,
                            "description": "Bank name (required — TWD payouts run over SWIFT)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_TW"
                            ]
                          },
                          "destinationBankBranch": {
                            "type": "string",
                            "minLength": 2,
                            "description": "Bank branch (required — TWD payouts run over SWIFT)"
                          },
                          "bic": {
                            "type": "string",
                            "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                            "description": "SWIFT BIC code (required for TWD payouts)"
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "description": "Type of bank account (legacy, optional)"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "Tax ID of the recipient (legacy, optional)"
                          },
                          "destinationDocumentType": {
                            "type": "string",
                            "description": "Document type of the recipient (legacy, optional)"
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "destinationBankName",
                          "type",
                          "destinationBankBranch",
                          "bic"
                        ],
                        "description": "Taiwan bank deposit details (SWIFT payout)",
                        "title": "Bank Deposit TW"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "description": "Bank code"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationBankBranch": {
                            "type": "string",
                            "description": "Bank branch"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "Tax ID of the recipient"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_BR"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankCode",
                          "destinationBankAccount",
                          "destinationBankBranch",
                          "destinationTaxId",
                          "type"
                        ],
                        "description": "Brazilian bank deposit details",
                        "title": "Bank Deposit BR"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPixCode": {
                            "type": "string",
                            "description": "PIX code"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "Tax ID of the recipient"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "PIX_BR"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPixCode",
                          "destinationTaxId",
                          "type"
                        ],
                        "description": "Brazilian PIX details",
                        "title": "PIX BR"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccountNumber": {
                            "type": "string",
                            "description": "Bank account number"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Name of the bank"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                            "description": "Tax ID of the recipient"
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "description": "Type of bank account"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_VEN"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccountNumber",
                          "destinationBankName",
                          "destinationTaxId",
                          "destinationBankAccountType",
                          "type"
                        ],
                        "description": "Venezuelan bank deposit details",
                        "title": "Bank Deposit VEN"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "description": "Bank code"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                            "description": "Tax ID of the recipient"
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "description": "Type of bank account"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "PHONE_DEPOSIT_VEN"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankCode",
                          "destinationPhoneNumber",
                          "destinationTaxId",
                          "destinationBankAccountType",
                          "type"
                        ],
                        "description": "Venezuelan phone deposit details",
                        "title": "Phone Deposit VEN"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationIFSC": {
                            "type": "string",
                            "description": "IFSC code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_IN"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Bank Deposit IN",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationIFSC": {
                            "type": "string",
                            "description": "IFSC code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "IMPS"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "IMPS",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationIFSC": {
                            "type": "string",
                            "description": "IFSC code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "THAI_QR"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Thai QR",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationIFSC": {
                            "type": "string",
                            "description": "IFSC code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "VIET_QR"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Viet QR",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationIFSC": {
                            "type": "string",
                            "description": "IFSC code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "GCASH"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "GCash",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "Tax ID"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_PAYMENT_IN"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "destinationTaxId",
                          "type"
                        ],
                        "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Mobile Payment IN",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "description": "Bank code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_VN"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "destinationBankCode",
                          "type"
                        ],
                        "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Bank Deposit VN",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "bic": {
                            "type": "string",
                            "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "destinationAddress": {
                            "type": "string",
                            "description": "Address line 1 of the recipient"
                          },
                          "destinationCity": {
                            "type": "string",
                            "description": "Recipient city (defaults to Hong Kong)"
                          },
                          "accountHolderName": {
                            "type": "string",
                            "description": "Bank account holder name if different from payee"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_HK"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "bic",
                          "destinationBankName",
                          "destinationAddress",
                          "type"
                        ],
                        "description": "Hong Kong bank deposit details (HKD bank corridor)",
                        "title": "Bank Deposit HK"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "pattern": "^\\d+$",
                            "description": "CNAPS / bank institution code (numeric, variable length)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "destinationAddress": {
                            "type": "string",
                            "description": "Address line 1 of the recipient"
                          },
                          "destinationCity": {
                            "type": "string",
                            "description": "Recipient city"
                          },
                          "destinationState": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                          },
                          "destinationPostcode": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                          },
                          "destinationPhone": {
                            "type": "string",
                            "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                          },
                          "accountHolderName": {
                            "type": "string",
                            "description": "Bank account holder name if different from payee"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_CN"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "destinationBankCode",
                          "destinationBankName",
                          "destinationAddress",
                          "destinationCity",
                          "destinationState",
                          "destinationPostcode",
                          "type"
                        ],
                        "description": "China mainland bank deposit details (CNY bank corridor)",
                        "title": "Bank Deposit CN"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_AR"
                            ]
                          },
                          "destinationCBU": {
                            "type": "string",
                            "description": "CBU — 22-digit bank account key (legacy, optional)"
                          },
                          "destinationCVU": {
                            "type": "string",
                            "description": "CVU — 22-digit virtual account key (legacy, optional)"
                          },
                          "destinationAlias": {
                            "type": "string",
                            "description": "Account alias (legacy, optional)"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                          },
                          "destinationDocumentType": {
                            "type": "string",
                            "description": "Document type of the recipient (legacy, optional)"
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Argentinian bank deposit details",
                        "title": "Bank Deposit AR"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Recipient bank name (required for Chilean bank payouts)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_CL"
                            ]
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "minLength": 1,
                            "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                          },
                          "destinationDocumentType": {
                            "type": "string",
                            "description": "Document type of the recipient (legacy, optional)"
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "destinationBankName",
                          "type",
                          "destinationBankAccountType",
                          "destinationTaxId"
                        ],
                        "description": "Chilean bank deposit details",
                        "title": "Bank Deposit CL"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "minLength": 2,
                            "maxLength": 30,
                            "description": "Recipient name (required, 2–30 characters)"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 11,
                            "description": "Bank account number (max 11 digits for Bolivian accounts)"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (unused for BOB — no network discovery)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "maxLength": 20,
                            "description": "Bank name (optional, max 20 characters)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_BO"
                            ]
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 15,
                            "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type",
                          "destinationTaxId"
                        ],
                        "description": "Bolivian bank deposit details",
                        "title": "Bank Deposit BO"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_PE"
                            ]
                          },
                          "destinationCCI": {
                            "type": "string",
                            "description": "CCI — 20-digit interbank account code (legacy, optional)"
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "description": "Account type (corriente/ahorro) (legacy, optional)"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                          },
                          "destinationDocumentType": {
                            "type": "string",
                            "description": "Document type of the recipient (legacy, optional)"
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "destinationNetworkId",
                          "type"
                        ],
                        "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Bank Deposit PE",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "pattern": "^\\d{3}$",
                            "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                          },
                          "destinationBankAccountNumber": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 20,
                            "description": "Recipient bank account number (max 20)"
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "enum": [
                              "CORRIENTE",
                              "AHORROS",
                              "PHONE"
                            ],
                            "description": "Bank account type"
                          },
                          "destinationCCI": {
                            "type": "string",
                            "pattern": "^\\d{1,20}$",
                            "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                          },
                          "destinationDocumentType": {
                            "type": "string",
                            "enum": [
                              "CC",
                              "CE",
                              "RUC",
                              "PAS",
                              "PAR",
                              "LMI",
                              "OTHER"
                            ],
                            "description": "Recipient identification type"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 50,
                            "description": "Recipient identification number (max 50)"
                          },
                          "email": {
                            "type": "string",
                            "pattern": "^.+@.+\\..+$",
                            "description": "Recipient email (required for PEN payouts)"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "pattern": "^\\d{1,9}$",
                            "description": "Recipient phone number (required, max 9 digits)"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_PEN"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankCode",
                          "destinationBankAccountNumber",
                          "destinationBankAccountType",
                          "destinationCCI",
                          "destinationDocumentType",
                          "destinationTaxId",
                          "email",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Peruvian bank deposit details (bank-code payout corridor).",
                        "title": "Bank Deposit PEN"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_NG"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Nigeria bank deposit details",
                        "title": "Bank Deposit NG"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_KE"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Kenya bank deposit details",
                        "title": "Bank Deposit KE"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_GH"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Bank Deposit GH",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_ZA"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "South Africa bank deposit details",
                        "title": "Bank Deposit ZA"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_TZ"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Tanzania bank deposit details",
                        "title": "Bank Deposit TZ"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_UG"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Uganda bank deposit details",
                        "title": "Bank Deposit UG"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_RW"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Rwanda bank deposit details",
                        "title": "Bank Deposit RW"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_MW"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Malawi bank deposit details",
                        "title": "Bank Deposit MW"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_ZM"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Zambia bank deposit details",
                        "title": "Bank Deposit ZM"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_BW"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Botswana bank deposit details",
                        "title": "Bank Deposit BW"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_CD"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Bank Deposit CD",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_XOF"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "West African CFA bank deposit details",
                        "title": "Bank Deposit XOF"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_XAF"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Central African CFA bank deposit details",
                        "title": "Bank Deposit XAF"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_NG"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Nigeria mobile money details",
                        "title": "Mobile Money NG"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_KE"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Kenya mobile money details",
                        "title": "Mobile Money KE"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_GH"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Mobile Money GH",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_ZA"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "South Africa mobile money details",
                        "title": "Mobile Money ZA"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_TZ"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Tanzania mobile money details",
                        "title": "Mobile Money TZ"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_UG"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Uganda mobile money details",
                        "title": "Mobile Money UG"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_RW"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Rwanda mobile money details",
                        "title": "Mobile Money RW"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_MW"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Malawi mobile money details",
                        "title": "Mobile Money MW"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_ZM"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Zambia mobile money details",
                        "title": "Mobile Money ZM"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_BW"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Botswana mobile money details",
                        "title": "Mobile Money BW"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_CD"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Mobile Money CD",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_XOF"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "West African CFA mobile money details",
                        "title": "Mobile Money XOF"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_XAF"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Central African CFA mobile money details",
                        "title": "Mobile Money XAF"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "description": "Bank code"
                          },
                          "destinationBankAccountNumber": {
                            "type": "string",
                            "description": "Bank account number (18-digit CLABE)"
                          },
                          "numericReference": {
                            "type": "string",
                            "description": "Numeric reference"
                          },
                          "notesReference": {
                            "type": "string",
                            "description": "Notes reference"
                          },
                          "destinationClabe": {
                            "type": "string",
                            "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_MX"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccountNumber",
                          "type"
                        ],
                        "description": "Mexican bank deposit details",
                        "title": "Bank Deposit MX"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPseNumber": {
                            "type": "string",
                            "description": "PSE number"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "PSE"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPseNumber",
                          "type"
                        ],
                        "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "PSE",
                        "deprecated": true
                      }
                    ],
                    "description": "The details required for the end user destination transfer method."
                  },
                  "status": {
                    "anyOf": [
                      {
                        "type": "string",
                        "enum": [
                          "Pending",
                          "Processing",
                          "Success",
                          "Failed",
                          "Canceled",
                          "Reviewing"
                        ],
                        "description": "Common status values that are shared across all operation types",
                        "examples": [
                          "Pending",
                          "Processing",
                          "Success",
                          "Failed",
                          "Canceled",
                          "Reviewing"
                        ]
                      },
                      {
                        "type": "string",
                        "enum": [
                          "PendingCancel",
                          "PendingWithdrawal",
                          "PendingVerification",
                          "Pending2FA",
                          "Compliance",
                          "Accepted",
                          "Approved",
                          "Rejected",
                          "Review"
                        ]
                      }
                    ],
                    "description": "Status of the withdrawal",
                    "examples": [
                      "Pending",
                      "Pending2FA",
                      "Compliance",
                      "Accepted",
                      "Approved",
                      "Success",
                      "Failed",
                      "Review",
                      "Rejected"
                    ]
                  },
                  "withdrawalInfo": {
                    "oneOf": [
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "BALANCE"
                            ]
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "Balance transfer details",
                        "title": "Balance"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "iban": {
                            "type": "string",
                            "description": "IBAN number"
                          },
                          "bic": {
                            "type": "string",
                            "description": "BIC number (optional)"
                          },
                          "country": {
                            "type": "string",
                            "description": "Country code"
                          },
                          "accountType": {
                            "type": "string",
                            "enum": [
                              "PERSONAL",
                              "BUSINESS"
                            ],
                            "default": "PERSONAL",
                            "description": "Account type (optional)"
                          },
                          "city": {
                            "type": "string",
                            "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                          },
                          "postalCode": {
                            "type": "string",
                            "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                          },
                          "address": {
                            "type": "string",
                            "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "SEPA"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "iban",
                          "country",
                          "type"
                        ],
                        "description": "SEPA transfer details",
                        "title": "SEPA"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "UK bank account number"
                          },
                          "sortCode": {
                            "type": "string",
                            "description": "UK sort code"
                          },
                          "country": {
                            "type": "string",
                            "enum": [
                              "GB"
                            ],
                            "default": "GB",
                            "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                          },
                          "accountType": {
                            "type": "string",
                            "enum": [
                              "PERSONAL",
                              "BUSINESS"
                            ],
                            "default": "PERSONAL",
                            "description": "Account type (optional)"
                          },
                          "city": {
                            "type": "string",
                            "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                          },
                          "postalCode": {
                            "type": "string",
                            "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                          },
                          "address": {
                            "type": "string",
                            "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "GBP_BANK_TRANSFER"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "accountNumber",
                          "sortCode",
                          "type"
                        ],
                        "description": "GBP domestic bank transfer details",
                        "title": "BankDepositGB"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "US bank account number"
                          },
                          "routingNumber": {
                            "type": "string",
                            "description": "US ABA routing number"
                          },
                          "country": {
                            "type": "string",
                            "enum": [
                              "US"
                            ],
                            "default": "US",
                            "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                          },
                          "accountType": {
                            "type": "string",
                            "enum": [
                              "PERSONAL",
                              "BUSINESS"
                            ],
                            "default": "PERSONAL",
                            "description": "Account type (optional)"
                          },
                          "bankAccountType": {
                            "type": "string",
                            "enum": [
                              "CHECKING",
                              "SAVINGS"
                            ],
                            "default": "CHECKING",
                            "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                          },
                          "city": {
                            "type": "string",
                            "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                          },
                          "postalCode": {
                            "type": "string",
                            "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                          },
                          "state": {
                            "type": "string",
                            "pattern": "^[A-Z]{2}$",
                            "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                          },
                          "address": {
                            "type": "string",
                            "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "ACH_US"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "accountNumber",
                          "routingNumber",
                          "state",
                          "type"
                        ],
                        "description": "USD ACH transfer details",
                        "title": "AchUS"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "linkedBankAccount"
                            ]
                          },
                          "accountLinkId": {
                            "type": "string",
                            "pattern": "^alnk_[0-9a-f]{24}$",
                            "description": "Identifier of one of the account holder own linked bank accounts",
                            "examples": [
                              "alnk_0123456789abcdef01234567"
                            ]
                          }
                        },
                        "required": [
                          "type",
                          "accountLinkId"
                        ],
                        "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                        "title": "LinkedBankAccount",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "ETH"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "ETH destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "ETH"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "MATIC"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "MATIC destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "MATIC"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "SOL"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "SOL destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "\\S"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "\\S"
                              }
                            }
                          }
                        ],
                        "title": "SOL"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "TRON"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "TRON destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "\\S"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "\\S"
                              }
                            }
                          }
                        ],
                        "title": "TRON"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "CELO"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "CELO destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "CELO"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "BTC"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "BTC destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "\\S"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "\\S"
                              }
                            }
                          }
                        ],
                        "title": "BTC"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "SOLANA"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "SOLANA destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "\\S"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "\\S"
                              }
                            }
                          }
                        ],
                        "title": "SOLANA"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "XRP"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "XRP destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "\\S"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "\\S"
                              }
                            }
                          }
                        ],
                        "title": "XRP"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "CARDANO"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "CARDANO destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "\\S"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "\\S"
                              }
                            }
                          }
                        ],
                        "title": "CARDANO"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "BSC"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "BSC destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "BSC"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "ARBITRUM"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "ARBITRUM destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "ARBITRUM"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "OPTIMISM"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "OPTIMISM destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "OPTIMISM"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "AVALANCHE"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "AVALANCHE destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "AVALANCHE"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "BASE"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "BASE destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "BASE"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_COL"
                            ]
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "Recipient ID document number. Required when creating or updating a destination."
                          },
                          "destinationDocumentType": {
                            "type": "string",
                            "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                        "title": "Bank Deposit COL"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "brebKey": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Bre-B key (llave) that identifies the recipient account"
                          },
                          "email": {
                            "type": "string",
                            "description": "Recipient email (optional contact for the Bre-B rail)"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Recipient phone number (optional contact for the Bre-B rail)"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BRE_B_COP"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "brebKey",
                          "type"
                        ],
                        "description": "Colombian Bre-B payout details",
                        "title": "Bre-B COP"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "pattern": "^\\d{4}$",
                            "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                          },
                          "destinationBankAccountNumber": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Recipient bank account number"
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                          },
                          "destinationDocumentType": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Recipient ID document number"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "ACH_COP"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankCode",
                          "destinationBankAccountNumber",
                          "destinationBankAccountType",
                          "destinationDocumentType",
                          "destinationTaxId",
                          "type"
                        ],
                        "description": "Colombian ACH payout details",
                        "title": "ACH COP"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (unused for TWD — no network discovery)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "minLength": 2,
                            "description": "Bank name (required — TWD payouts run over SWIFT)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_TW"
                            ]
                          },
                          "destinationBankBranch": {
                            "type": "string",
                            "minLength": 2,
                            "description": "Bank branch (required — TWD payouts run over SWIFT)"
                          },
                          "bic": {
                            "type": "string",
                            "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                            "description": "SWIFT BIC code (required for TWD payouts)"
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "description": "Type of bank account (legacy, optional)"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "Tax ID of the recipient (legacy, optional)"
                          },
                          "destinationDocumentType": {
                            "type": "string",
                            "description": "Document type of the recipient (legacy, optional)"
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "destinationBankName",
                          "type",
                          "destinationBankBranch",
                          "bic"
                        ],
                        "description": "Taiwan bank deposit details (SWIFT payout)",
                        "title": "Bank Deposit TW"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "description": "Bank code"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationBankBranch": {
                            "type": "string",
                            "description": "Bank branch"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "Tax ID of the recipient"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_BR"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankCode",
                          "destinationBankAccount",
                          "destinationBankBranch",
                          "destinationTaxId",
                          "type"
                        ],
                        "description": "Brazilian bank deposit details",
                        "title": "Bank Deposit BR"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPixCode": {
                            "type": "string",
                            "description": "PIX code"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "Tax ID of the recipient"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "PIX_BR"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPixCode",
                          "destinationTaxId",
                          "type"
                        ],
                        "description": "Brazilian PIX details",
                        "title": "PIX BR"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccountNumber": {
                            "type": "string",
                            "description": "Bank account number"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Name of the bank"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                            "description": "Tax ID of the recipient"
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "description": "Type of bank account"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_VEN"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccountNumber",
                          "destinationBankName",
                          "destinationTaxId",
                          "destinationBankAccountType",
                          "type"
                        ],
                        "description": "Venezuelan bank deposit details",
                        "title": "Bank Deposit VEN"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "description": "Bank code"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                            "description": "Tax ID of the recipient"
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "description": "Type of bank account"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "PHONE_DEPOSIT_VEN"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankCode",
                          "destinationPhoneNumber",
                          "destinationTaxId",
                          "destinationBankAccountType",
                          "type"
                        ],
                        "description": "Venezuelan phone deposit details",
                        "title": "Phone Deposit VEN"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationIFSC": {
                            "type": "string",
                            "description": "IFSC code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_IN"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Bank Deposit IN",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationIFSC": {
                            "type": "string",
                            "description": "IFSC code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "IMPS"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "IMPS",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationIFSC": {
                            "type": "string",
                            "description": "IFSC code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "THAI_QR"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Thai QR",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationIFSC": {
                            "type": "string",
                            "description": "IFSC code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "VIET_QR"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Viet QR",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationIFSC": {
                            "type": "string",
                            "description": "IFSC code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "GCASH"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "GCash",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "Tax ID"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_PAYMENT_IN"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "destinationTaxId",
                          "type"
                        ],
                        "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Mobile Payment IN",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "description": "Bank code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_VN"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "destinationBankCode",
                          "type"
                        ],
                        "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Bank Deposit VN",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "bic": {
                            "type": "string",
                            "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "destinationAddress": {
                            "type": "string",
                            "description": "Address line 1 of the recipient"
                          },
                          "destinationCity": {
                            "type": "string",
                            "description": "Recipient city (defaults to Hong Kong)"
                          },
                          "accountHolderName": {
                            "type": "string",
                            "description": "Bank account holder name if different from payee"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_HK"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "bic",
                          "destinationBankName",
                          "destinationAddress",
                          "type"
                        ],
                        "description": "Hong Kong bank deposit details (HKD bank corridor)",
                        "title": "Bank Deposit HK"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "pattern": "^\\d+$",
                            "description": "CNAPS / bank institution code (numeric, variable length)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "destinationAddress": {
                            "type": "string",
                            "description": "Address line 1 of the recipient"
                          },
                          "destinationCity": {
                            "type": "string",
                            "description": "Recipient city"
                          },
                          "destinationState": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                          },
                          "destinationPostcode": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                          },
                          "destinationPhone": {
                            "type": "string",
                            "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                          },
                          "accountHolderName": {
                            "type": "string",
                            "description": "Bank account holder name if different from payee"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_CN"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "destinationBankCode",
                          "destinationBankName",
                          "destinationAddress",
                          "destinationCity",
                          "destinationState",
                          "destinationPostcode",
                          "type"
                        ],
                        "description": "China mainland bank deposit details (CNY bank corridor)",
                        "title": "Bank Deposit CN"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_AR"
                            ]
                          },
                          "destinationCBU": {
                            "type": "string",
                            "description": "CBU — 22-digit bank account key (legacy, optional)"
                          },
                          "destinationCVU": {
                            "type": "string",
                            "description": "CVU — 22-digit virtual account key (legacy, optional)"
                          },
                          "destinationAlias": {
                            "type": "string",
                            "description": "Account alias (legacy, optional)"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                          },
                          "destinationDocumentType": {
                            "type": "string",
                            "description": "Document type of the recipient (legacy, optional)"
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Argentinian bank deposit details",
                        "title": "Bank Deposit AR"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Recipient bank name (required for Chilean bank payouts)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_CL"
                            ]
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "minLength": 1,
                            "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                          },
                          "destinationDocumentType": {
                            "type": "string",
                            "description": "Document type of the recipient (legacy, optional)"
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "destinationBankName",
                          "type",
                          "destinationBankAccountType",
                          "destinationTaxId"
                        ],
                        "description": "Chilean bank deposit details",
                        "title": "Bank Deposit CL"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "minLength": 2,
                            "maxLength": 30,
                            "description": "Recipient name (required, 2–30 characters)"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 11,
                            "description": "Bank account number (max 11 digits for Bolivian accounts)"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (unused for BOB — no network discovery)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "maxLength": 20,
                            "description": "Bank name (optional, max 20 characters)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_BO"
                            ]
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 15,
                            "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type",
                          "destinationTaxId"
                        ],
                        "description": "Bolivian bank deposit details",
                        "title": "Bank Deposit BO"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_PE"
                            ]
                          },
                          "destinationCCI": {
                            "type": "string",
                            "description": "CCI — 20-digit interbank account code (legacy, optional)"
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "description": "Account type (corriente/ahorro) (legacy, optional)"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                          },
                          "destinationDocumentType": {
                            "type": "string",
                            "description": "Document type of the recipient (legacy, optional)"
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "destinationNetworkId",
                          "type"
                        ],
                        "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Bank Deposit PE",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "pattern": "^\\d{3}$",
                            "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                          },
                          "destinationBankAccountNumber": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 20,
                            "description": "Recipient bank account number (max 20)"
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "enum": [
                              "CORRIENTE",
                              "AHORROS",
                              "PHONE"
                            ],
                            "description": "Bank account type"
                          },
                          "destinationCCI": {
                            "type": "string",
                            "pattern": "^\\d{1,20}$",
                            "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                          },
                          "destinationDocumentType": {
                            "type": "string",
                            "enum": [
                              "CC",
                              "CE",
                              "RUC",
                              "PAS",
                              "PAR",
                              "LMI",
                              "OTHER"
                            ],
                            "description": "Recipient identification type"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 50,
                            "description": "Recipient identification number (max 50)"
                          },
                          "email": {
                            "type": "string",
                            "pattern": "^.+@.+\\..+$",
                            "description": "Recipient email (required for PEN payouts)"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "pattern": "^\\d{1,9}$",
                            "description": "Recipient phone number (required, max 9 digits)"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_PEN"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankCode",
                          "destinationBankAccountNumber",
                          "destinationBankAccountType",
                          "destinationCCI",
                          "destinationDocumentType",
                          "destinationTaxId",
                          "email",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Peruvian bank deposit details (bank-code payout corridor).",
                        "title": "Bank Deposit PEN"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_NG"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Nigeria bank deposit details",
                        "title": "Bank Deposit NG"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_KE"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Kenya bank deposit details",
                        "title": "Bank Deposit KE"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_GH"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Bank Deposit GH",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_ZA"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "South Africa bank deposit details",
                        "title": "Bank Deposit ZA"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_TZ"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Tanzania bank deposit details",
                        "title": "Bank Deposit TZ"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_UG"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Uganda bank deposit details",
                        "title": "Bank Deposit UG"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_RW"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Rwanda bank deposit details",
                        "title": "Bank Deposit RW"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_MW"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Malawi bank deposit details",
                        "title": "Bank Deposit MW"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_ZM"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Zambia bank deposit details",
                        "title": "Bank Deposit ZM"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_BW"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Botswana bank deposit details",
                        "title": "Bank Deposit BW"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_CD"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Bank Deposit CD",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_XOF"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "West African CFA bank deposit details",
                        "title": "Bank Deposit XOF"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_XAF"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Central African CFA bank deposit details",
                        "title": "Bank Deposit XAF"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_NG"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Nigeria mobile money details",
                        "title": "Mobile Money NG"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_KE"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Kenya mobile money details",
                        "title": "Mobile Money KE"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_GH"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Mobile Money GH",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_ZA"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "South Africa mobile money details",
                        "title": "Mobile Money ZA"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_TZ"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Tanzania mobile money details",
                        "title": "Mobile Money TZ"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_UG"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Uganda mobile money details",
                        "title": "Mobile Money UG"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_RW"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Rwanda mobile money details",
                        "title": "Mobile Money RW"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_MW"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Malawi mobile money details",
                        "title": "Mobile Money MW"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_ZM"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Zambia mobile money details",
                        "title": "Mobile Money ZM"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_BW"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Botswana mobile money details",
                        "title": "Mobile Money BW"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_CD"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Mobile Money CD",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_XOF"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "West African CFA mobile money details",
                        "title": "Mobile Money XOF"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_XAF"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Central African CFA mobile money details",
                        "title": "Mobile Money XAF"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "description": "Bank code"
                          },
                          "destinationBankAccountNumber": {
                            "type": "string",
                            "description": "Bank account number (18-digit CLABE)"
                          },
                          "numericReference": {
                            "type": "string",
                            "description": "Numeric reference"
                          },
                          "notesReference": {
                            "type": "string",
                            "description": "Notes reference"
                          },
                          "destinationClabe": {
                            "type": "string",
                            "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_MX"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccountNumber",
                          "type"
                        ],
                        "description": "Mexican bank deposit details",
                        "title": "Bank Deposit MX"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPseNumber": {
                            "type": "string",
                            "description": "PSE number"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "PSE"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPseNumber",
                          "type"
                        ],
                        "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "PSE",
                        "deprecated": true
                      }
                    ],
                    "description": "Detailed withdrawal information",
                    "title": "WithdrawalInfo"
                  },
                  "source": {
                    "type": "string",
                    "enum": [
                      "ui",
                      "apiApp",
                      "externalApi",
                      "internal"
                    ],
                    "description": "Source of withdrawal creation",
                    "example": "externalApi"
                  },
                  "requires2FA": {
                    "type": "boolean",
                    "description": "Whether 2FA is required for this withdrawal",
                    "example": false
                  },
                  "twoFactorToken": {
                    "type": "string",
                    "description": "2FA token for email approval",
                    "example": "abc123"
                  },
                  "twoFactorApprovedAt": {
                    "type": "number",
                    "description": "Timestamp when 2FA was approved",
                    "example": 1723027132
                  },
                  "errorCode": {
                    "type": "string",
                    "description": "Error code when status is Review",
                    "example": "INSUFFICIENT_BALANCE"
                  },
                  "errorDetails": {
                    "type": "string",
                    "description": "Detailed error information",
                    "example": "Insufficient balance for withdrawal"
                  },
                  "reviewedBy": {
                    "type": "string",
                    "description": "Admin email who reviewed the withdrawal",
                    "example": "admin@example.com"
                  },
                  "reviewedAt": {
                    "type": "number",
                    "description": "Timestamp when review happened",
                    "example": 1723027132
                  }
                },
                "required": [
                  "withdrawalId",
                  "createdAt",
                  "amount",
                  "currency",
                  "fee",
                  "feeCurrency",
                  "status"
                ],
                "description": "Data for withdrawal completed event"
              },
              {
                "type": "object",
                "properties": {
                  "orderId": {
                    "type": "string",
                    "description": "ID of the order",
                    "examples": [
                      "01CLFXMT67II",
                      "2R7E5Y5KFXP8",
                      "4FWWRE3Y2URM"
                    ]
                  },
                  "deposit": {
                    "type": "object",
                    "properties": {
                      "depositId": {
                        "type": "string",
                        "minLength": 1,
                        "description": "ID of the deposit. Normally a 12-character internal id; deposits created before mid-2026 may carry a longer legacy id. Treat it as an opaque string."
                      },
                      "externalReference": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "description": "Your own reference for this deposit. Stored as-is and returned on create, detail and list, so you can look the deposit up by it after a network timeout instead of retrying blind. Not interpreted by VirtuaBroker and not shown to the payer — for the payer's transfer reference use depositInfo.referenceCode.",
                        "examples": [
                          "partner-ref-0001",
                          "inv_2026_00417"
                        ]
                      },
                      "userData": {
                        "oneOf": [
                          {
                            "type": "object",
                            "properties": {
                              "userType": {
                                "type": "string",
                                "enum": [
                                  "individual"
                                ]
                              },
                              "firstName": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 50,
                                "description": "First name of the user making the deposit (or representative for business)",
                                "examples": [
                                  "John",
                                  "Alice",
                                  "Bob"
                                ]
                              },
                              "lastName": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "Last name of the user making the deposit (or representative for business)",
                                "examples": [
                                  "Doe",
                                  "Smith",
                                  "Johnson"
                                ]
                              },
                              "userEmail": {
                                "type": "string",
                                "maxLength": 254,
                                "format": "email",
                                "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                "description": "Email of the user making the deposit",
                                "examples": [
                                  "user@virtuabroker.com",
                                  "john.doe@example.com",
                                  "alice@example.com"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "maxLength": 150,
                                "description": "Address of the user making the deposit",
                                "examples": [
                                  "123 Main St, Anytown, ES",
                                  "456 Elm St, Anytown, ES",
                                  "789 Oak St, Anytown, ES"
                                ]
                              },
                              "taxDocumentType": {
                                "type": "string",
                                "maxLength": 50,
                                "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                "examples": [
                                  "CC",
                                  "NIT",
                                  "CE",
                                  "NIF",
                                  "Other"
                                ]
                              },
                              "taxId": {
                                "type": "string",
                                "maxLength": 30,
                                "description": "Tax ID of the user making the deposit",
                                "examples": [
                                  "123-45-6789",
                                  "987-65-4321",
                                  "111-22-3333"
                                ]
                              },
                              "country": {
                                "type": "string",
                                "enum": [
                                  "US",
                                  "CA",
                                  "GB",
                                  "DE",
                                  "FR",
                                  "AU",
                                  "JP",
                                  "KR",
                                  "SE",
                                  "NO",
                                  "DK",
                                  "FI",
                                  "NL",
                                  "BE",
                                  "CH",
                                  "AT",
                                  "NZ",
                                  "SG",
                                  "IE",
                                  "LU",
                                  "PT",
                                  "ES",
                                  "IT",
                                  "GR",
                                  "CZ",
                                  "PL",
                                  "HU",
                                  "SK",
                                  "SI",
                                  "EE",
                                  "LT",
                                  "LV",
                                  "IS",
                                  "MT",
                                  "CY",
                                  "HR",
                                  "RO",
                                  "BG",
                                  "BR",
                                  "AR",
                                  "CL",
                                  "MX",
                                  "CO",
                                  "PE",
                                  "PA",
                                  "UY",
                                  "BO",
                                  "ZA",
                                  "NG",
                                  "KE",
                                  "GH",
                                  "TZ",
                                  "UG",
                                  "RW",
                                  "MW",
                                  "ZM",
                                  "BW",
                                  "CD",
                                  "CI",
                                  "CM",
                                  "IL",
                                  "AE",
                                  "QA",
                                  "SA",
                                  "OM",
                                  "KW",
                                  "BH",
                                  "MY",
                                  "PH",
                                  "TH",
                                  "VN",
                                  "ID",
                                  "IN",
                                  "LK",
                                  "NP",
                                  "BD",
                                  "PK",
                                  "EG",
                                  "MA",
                                  "DZ",
                                  "TN",
                                  "JO",
                                  "LB",
                                  "TR",
                                  "KH",
                                  "MM",
                                  "LA",
                                  "EN",
                                  "BT",
                                  "VE",
                                  "TW",
                                  "HK",
                                  "CN"
                                ],
                                "description": "Country code of the user making the deposit",
                                "examples": [
                                  "ES",
                                  "US",
                                  "GB"
                                ]
                              },
                              "state": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "State of the user making the deposit",
                                "examples": [
                                  "Madrid",
                                  "New York",
                                  "London"
                                ]
                              },
                              "postalCode": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 30,
                                "description": "Postal code of the user making the deposit",
                                "examples": [
                                  "12345",
                                  "67890",
                                  "abcde"
                                ]
                              },
                              "city": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "City of the user making the deposit",
                                "examples": [
                                  "Madrid",
                                  "New York",
                                  "London"
                                ]
                              },
                              "dob": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 30,
                                "description": "Date of birth of the user making the deposit",
                                "examples": [
                                  "1990-01-01",
                                  "1995-05-15",
                                  "1988-12-31"
                                ]
                              },
                              "phoneNumber": {
                                "type": "string",
                                "maxLength": 30,
                                "description": "Phone number of the user making the deposit",
                                "examples": [
                                  "+447700900123",
                                  "+447700900456",
                                  "+447700900789"
                                ]
                              },
                              "kycId": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 300,
                                "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                "examples": [
                                  "kyc-12345",
                                  "kyc-67890",
                                  "kyc-abcde"
                                ]
                              },
                              "activity": {
                                "type": "string",
                                "description": "Activity of the user making the deposit",
                                "examples": [
                                  "worker",
                                  "business",
                                  "student"
                                ]
                              }
                            },
                            "required": [
                              "userType",
                              "firstName",
                              "userEmail",
                              "country"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "userType": {
                                "type": "string",
                                "enum": [
                                  "business"
                                ]
                              },
                              "businessName": {
                                "type": "string",
                                "maxLength": 150,
                                "description": "Business name (required when userType is business)",
                                "examples": [
                                  "Acme Corp",
                                  "Tech Solutions Inc",
                                  "Global Services Ltd"
                                ]
                              },
                              "firstName": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 50,
                                "description": "First name of the user making the deposit (or representative for business)",
                                "examples": [
                                  "John",
                                  "Alice",
                                  "Bob"
                                ]
                              },
                              "userEmail": {
                                "type": "string",
                                "maxLength": 254,
                                "format": "email",
                                "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                "description": "Email of the user making the deposit",
                                "examples": [
                                  "user@virtuabroker.com",
                                  "john.doe@example.com",
                                  "alice@example.com"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "maxLength": 150,
                                "description": "Address of the user making the deposit",
                                "examples": [
                                  "123 Main St, Anytown, ES",
                                  "456 Elm St, Anytown, ES",
                                  "789 Oak St, Anytown, ES"
                                ]
                              },
                              "taxDocumentType": {
                                "type": "string",
                                "maxLength": 50,
                                "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                "examples": [
                                  "CC",
                                  "NIT",
                                  "CE",
                                  "NIF",
                                  "Other"
                                ]
                              },
                              "taxId": {
                                "type": "string",
                                "maxLength": 30,
                                "description": "Tax ID of the user making the deposit",
                                "examples": [
                                  "123-45-6789",
                                  "987-65-4321",
                                  "111-22-3333"
                                ]
                              },
                              "country": {
                                "type": "string",
                                "enum": [
                                  "US",
                                  "CA",
                                  "GB",
                                  "DE",
                                  "FR",
                                  "AU",
                                  "JP",
                                  "KR",
                                  "SE",
                                  "NO",
                                  "DK",
                                  "FI",
                                  "NL",
                                  "BE",
                                  "CH",
                                  "AT",
                                  "NZ",
                                  "SG",
                                  "IE",
                                  "LU",
                                  "PT",
                                  "ES",
                                  "IT",
                                  "GR",
                                  "CZ",
                                  "PL",
                                  "HU",
                                  "SK",
                                  "SI",
                                  "EE",
                                  "LT",
                                  "LV",
                                  "IS",
                                  "MT",
                                  "CY",
                                  "HR",
                                  "RO",
                                  "BG",
                                  "BR",
                                  "AR",
                                  "CL",
                                  "MX",
                                  "CO",
                                  "PE",
                                  "PA",
                                  "UY",
                                  "BO",
                                  "ZA",
                                  "NG",
                                  "KE",
                                  "GH",
                                  "TZ",
                                  "UG",
                                  "RW",
                                  "MW",
                                  "ZM",
                                  "BW",
                                  "CD",
                                  "CI",
                                  "CM",
                                  "IL",
                                  "AE",
                                  "QA",
                                  "SA",
                                  "OM",
                                  "KW",
                                  "BH",
                                  "MY",
                                  "PH",
                                  "TH",
                                  "VN",
                                  "ID",
                                  "IN",
                                  "LK",
                                  "NP",
                                  "BD",
                                  "PK",
                                  "EG",
                                  "MA",
                                  "DZ",
                                  "TN",
                                  "JO",
                                  "LB",
                                  "TR",
                                  "KH",
                                  "MM",
                                  "LA",
                                  "EN",
                                  "BT",
                                  "VE",
                                  "TW",
                                  "HK",
                                  "CN"
                                ],
                                "description": "Country code of the user making the deposit",
                                "examples": [
                                  "ES",
                                  "US",
                                  "GB"
                                ]
                              },
                              "state": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "State of the user making the deposit",
                                "examples": [
                                  "Madrid",
                                  "New York",
                                  "London"
                                ]
                              },
                              "postalCode": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 30,
                                "description": "Postal code of the user making the deposit",
                                "examples": [
                                  "12345",
                                  "67890",
                                  "abcde"
                                ]
                              },
                              "city": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "City of the user making the deposit",
                                "examples": [
                                  "Madrid",
                                  "New York",
                                  "London"
                                ]
                              },
                              "dob": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 30,
                                "description": "Date of birth of the user making the deposit",
                                "examples": [
                                  "1990-01-01",
                                  "1995-05-15",
                                  "1988-12-31"
                                ]
                              },
                              "phoneNumber": {
                                "type": "string",
                                "maxLength": 30,
                                "description": "Phone number of the user making the deposit",
                                "examples": [
                                  "+447700900123",
                                  "+447700900456",
                                  "+447700900789"
                                ]
                              },
                              "kycId": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 300,
                                "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                "examples": [
                                  "kyc-12345",
                                  "kyc-67890",
                                  "kyc-abcde"
                                ]
                              },
                              "activity": {
                                "type": "string",
                                "description": "Activity of the user making the deposit",
                                "examples": [
                                  "worker",
                                  "business",
                                  "student"
                                ]
                              }
                            },
                            "required": [
                              "userType",
                              "businessName",
                              "firstName",
                              "userEmail",
                              "country"
                            ]
                          }
                        ],
                        "description": "User data of the person/company making the deposit",
                        "examples": [
                          {
                            "userType": "individual",
                            "firstName": "John",
                            "lastName": "Doe",
                            "userEmail": "user@virtuabroker.com",
                            "address": "123 Main St, Anytown, ES",
                            "taxId": "123-45-6789",
                            "country": "ES"
                          },
                          {
                            "userType": "individual",
                            "firstName": "Alice",
                            "lastName": "Smith",
                            "userEmail": "alice@example.com",
                            "address": "456 Elm St, Anytown, ES",
                            "taxId": "987-65-4321",
                            "country": "ES"
                          }
                        ]
                      },
                      "createdAt": {
                        "type": "number",
                        "description": "Creation time of the deposit",
                        "examples": [
                          1723027132,
                          1723027133,
                          1723027134
                        ]
                      },
                      "rail": {
                        "type": "string",
                        "enum": [
                          "BALANCE",
                          "SEPA",
                          "BTC",
                          "ETH",
                          "MATIC",
                          "POLYGON",
                          "CELO",
                          "TRON",
                          "SOLANA",
                          "ARBITRUM",
                          "OPTIMISM",
                          "AVALANCHE",
                          "BSC",
                          "BASE",
                          "XRP",
                          "PIX_BR",
                          "UPI",
                          "IMPS",
                          "TRY_BANK_TRANSFER",
                          "AED_BANK_TRANSFER",
                          "SPEI",
                          "IDR_BANK_TRANSFER",
                          "CREDIT_CARD",
                          "THAI_QR",
                          "VIET_QR",
                          "GCASH",
                          "ARGENTINA_BANK_TRANSFER",
                          "PSE",
                          "CLABE",
                          "PIX",
                          "BANK_DEPOSIT_COL",
                          "BANK_DEPOSIT_AR",
                          "BANK_DEPOSIT_CL",
                          "BANK_DEPOSIT_PE",
                          "BANK_DEPOSIT_BO",
                          "BANK_DEPOSIT_BR",
                          "BANK_DEPOSIT_NG",
                          "BANK_DEPOSIT_KE",
                          "BANK_DEPOSIT_GH",
                          "BANK_DEPOSIT_ZA",
                          "BANK_DEPOSIT_TZ",
                          "BANK_DEPOSIT_UG",
                          "BANK_DEPOSIT_RW",
                          "BANK_DEPOSIT_MW",
                          "BANK_DEPOSIT_ZM",
                          "BANK_DEPOSIT_BW",
                          "BANK_DEPOSIT_CD",
                          "BANK_DEPOSIT_XOF",
                          "BANK_DEPOSIT_XAF",
                          "MOBILE_MONEY_NG",
                          "MOBILE_MONEY_KE",
                          "MOBILE_MONEY_GH",
                          "MOBILE_MONEY_ZA",
                          "MOBILE_MONEY_TZ",
                          "MOBILE_MONEY_UG",
                          "MOBILE_MONEY_RW",
                          "MOBILE_MONEY_MW",
                          "MOBILE_MONEY_ZM",
                          "MOBILE_MONEY_BW",
                          "MOBILE_MONEY_CD",
                          "MOBILE_MONEY_XOF",
                          "MOBILE_MONEY_XAF",
                          "ACH_US",
                          "GBP_BANK_TRANSFER"
                        ],
                        "description": "Rail of the deposit"
                      },
                      "receivedAt": {
                        "type": "number",
                        "description": "Unix ms timestamp of when the funds for this deposit ARRIVED — recorded when the incoming payment is matched to the deposit, which is before it is credited. Present whenever funds have arrived, including a deposit whose funds are still held in review; omitted entirely when no funds ever arrived, so a never-funded or cancelled deposit has no value here and its presence is a reliable settlement signal for reconciliation. Identical on GET /v1/deposits and GET /v1/deposits/{depositId}. Note that the deposit object embedded in order and operation responses does not yet apply this rule — it returns the stored value. Not the creation time — use createdAt for that.",
                        "examples": [
                          1723027132000,
                          1723027133000,
                          1723027134000
                        ]
                      },
                      "expectedAmount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Amount expected of the deposit",
                        "examples": [
                          1000,
                          2000,
                          3000
                        ]
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Amount received of the deposit",
                        "examples": [
                          1000,
                          2000,
                          3000
                        ]
                      },
                      "currency": {
                        "anyOf": [
                          {
                            "type": "string",
                            "enum": [
                              "EUR",
                              "USD",
                              "GBP",
                              "BRL",
                              "MXN",
                              "ARS",
                              "COP",
                              "PEN",
                              "NGN",
                              "KES",
                              "TZS",
                              "UGX",
                              "RWF",
                              "MWK",
                              "ZMW",
                              "XOF",
                              "XAF",
                              "BWP"
                            ]
                          },
                          {
                            "type": "string",
                            "enum": [
                              "USDC",
                              "USDT",
                              "CUSD",
                              "BTC",
                              "ETH",
                              "POL",
                              "SOL",
                              "TRX",
                              "AVAX",
                              "XRP",
                              "BNB"
                            ]
                          }
                        ],
                        "description": "Currency of the deposit",
                        "examples": [
                          "EUR",
                          "BRL"
                        ]
                      },
                      "fee": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Fee for the deposit. This value is written once the deposit has been executed. Meanwhile it will appear 0.",
                        "example": 10
                      },
                      "expectedFee": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Fee for the deposit. This value is correlated with the expected amount for the deposit.",
                        "examples": [
                          10,
                          20,
                          30
                        ]
                      },
                      "feeCurrency": {
                        "anyOf": [
                          {
                            "type": "string",
                            "enum": [
                              "EUR",
                              "USD",
                              "GBP",
                              "BRL",
                              "MXN",
                              "ARS",
                              "COP",
                              "PEN",
                              "NGN",
                              "KES",
                              "TZS",
                              "UGX",
                              "RWF",
                              "MWK",
                              "ZMW",
                              "XOF",
                              "XAF",
                              "BWP"
                            ]
                          },
                          {
                            "type": "string",
                            "enum": [
                              "USDC",
                              "USDT",
                              "CUSD",
                              "BTC",
                              "ETH",
                              "POL",
                              "SOL",
                              "TRX",
                              "AVAX",
                              "XRP",
                              "BNB"
                            ]
                          }
                        ],
                        "description": "Currency of the fee",
                        "examples": [
                          "EUR",
                          "BRL"
                        ]
                      },
                      "status": {
                        "anyOf": [
                          {
                            "type": "string",
                            "enum": [
                              "Pending",
                              "Processing",
                              "Success",
                              "Failed",
                              "Canceled",
                              "Reviewing"
                            ],
                            "description": "Common status values that are shared across all operation types",
                            "examples": [
                              "Pending",
                              "Processing",
                              "Success",
                              "Failed",
                              "Canceled",
                              "Reviewing"
                            ]
                          },
                          {
                            "type": "string",
                            "enum": [
                              "PendingCancel",
                              "Received"
                            ]
                          }
                        ],
                        "description": "Status of the deposit",
                        "examples": [
                          "Pending",
                          "Success",
                          "Failed",
                          "Received",
                          "PendingCancel"
                        ]
                      },
                      "depositInfo": {
                        "oneOf": [
                          {
                            "type": "object",
                            "properties": {
                              "accountHolder": {
                                "type": "string",
                                "description": "Name of the account holder",
                                "example": "John Doe"
                              },
                              "iban": {
                                "type": "string",
                                "description": "SEPA Bank Account Number",
                                "example": "DE8937XXXXXXXXXXXX3000"
                              },
                              "bic": {
                                "type": "string",
                                "description": "Bank BIC/SWIFT code",
                                "example": "DEUTDEFF"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Name of the bank",
                                "example": "Deutsche Bank"
                              },
                              "bankAddress": {
                                "type": "string",
                                "description": "Address of the bank",
                                "example": "Taunusanlage 12"
                              },
                              "bankCity": {
                                "type": "string",
                                "description": "City of the bank",
                                "example": "Frankfurt am Main"
                              },
                              "bankZipcode": {
                                "type": "string",
                                "description": "Zipcode of the bank",
                                "example": "60325"
                              },
                              "bankCountry": {
                                "type": "string",
                                "enum": [
                                  "US",
                                  "CA",
                                  "GB",
                                  "DE",
                                  "FR",
                                  "AU",
                                  "JP",
                                  "KR",
                                  "SE",
                                  "NO",
                                  "DK",
                                  "FI",
                                  "NL",
                                  "BE",
                                  "CH",
                                  "AT",
                                  "NZ",
                                  "SG",
                                  "IE",
                                  "LU",
                                  "PT",
                                  "ES",
                                  "IT",
                                  "GR",
                                  "CZ",
                                  "PL",
                                  "HU",
                                  "SK",
                                  "SI",
                                  "EE",
                                  "LT",
                                  "LV",
                                  "IS",
                                  "MT",
                                  "CY",
                                  "HR",
                                  "RO",
                                  "BG",
                                  "BR",
                                  "AR",
                                  "CL",
                                  "MX",
                                  "CO",
                                  "PE",
                                  "PA",
                                  "UY",
                                  "BO",
                                  "ZA",
                                  "NG",
                                  "KE",
                                  "GH",
                                  "TZ",
                                  "UG",
                                  "RW",
                                  "MW",
                                  "ZM",
                                  "BW",
                                  "CD",
                                  "CI",
                                  "CM",
                                  "IL",
                                  "AE",
                                  "QA",
                                  "SA",
                                  "OM",
                                  "KW",
                                  "BH",
                                  "MY",
                                  "PH",
                                  "TH",
                                  "VN",
                                  "ID",
                                  "IN",
                                  "LK",
                                  "NP",
                                  "BD",
                                  "PK",
                                  "EG",
                                  "MA",
                                  "DZ",
                                  "TN",
                                  "JO",
                                  "LB",
                                  "TR",
                                  "KH",
                                  "MM",
                                  "LA",
                                  "EN",
                                  "BT",
                                  "VE",
                                  "TW",
                                  "HK",
                                  "CN"
                                ],
                                "description": "Country of the bank",
                                "example": "DE"
                              },
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "SEPA"
                                ]
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount. It can be 0 for open-amount bank transfers where the sender chooses the final amount from their bank.",
                                "example": 1000
                              },
                              "referenceCode": {
                                "type": "string",
                                "minLength": 1,
                                "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order. The user must include this code when making the deposit to ensure accurate processing. In cases where the reference code is incorrect or missing, we manually match orders based on the sender's name and other available details. In case the deposit is not matched, we will mark the order as Reviewing and the system will require manual attention.",
                                "example": "REF123456"
                              },
                              "extraDepositMethods": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "methodType": {
                                      "type": "string",
                                      "enum": [
                                        "HOSTED_CHECKOUT"
                                      ],
                                      "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                                    },
                                    "url": {
                                      "type": "string",
                                      "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                                      "example": "https://checkout.example.com/pay/abc123"
                                    },
                                    "callbackUrl": {
                                      "type": "string",
                                      "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Payment reference for this method (equals the deposit/order reference)"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                                    },
                                    "currency": {
                                      "type": "string",
                                      "description": "Currency of this method"
                                    },
                                    "expiresAt": {
                                      "type": "number",
                                      "description": "Unix ms after which `url` is no longer valid, when known"
                                    }
                                  },
                                  "required": [
                                    "methodType",
                                    "url"
                                  ],
                                  "description": "An additional, optional way to pay this deposit"
                                },
                                "description": "Additional, optional ways to pay this same deposit (e.g. a hosted card page). The bank details above remain the primary method; ignore this field if you only support bank transfer."
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ],
                            "description": "Detailed information about a bank deposit, including the amount and a unique reference code for identification."
                          },
                          {
                            "type": "object",
                            "properties": {
                              "address": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Crypto wallet address",
                                "example": "0x1A2b3C4d5E6f7890AbCdEf1234567890AbCdEf12"
                              },
                              "network": {
                                "type": "string",
                                "enum": [
                                  "MATIC",
                                  "ETH",
                                  "CELO",
                                  "TRON",
                                  "BTC",
                                  "SOLANA",
                                  "XRP",
                                  "CARDANO",
                                  "BSC",
                                  "ARBITRUM",
                                  "OPTIMISM",
                                  "AVALANCHE",
                                  "BASE"
                                ],
                                "description": "Network for the deposit for crypto deposits",
                                "examples": [
                                  "ETH",
                                  "MATIC",
                                  "CELO"
                                ]
                              },
                              "memo": {
                                "type": "string",
                                "description": "Optional memo for the transaction",
                                "example": "Payment for services"
                              },
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "CRYPTO"
                                ]
                              },
                              "qrCode": {
                                "type": "string",
                                "description": "Base64-encoded QR image for the deposit address",
                                "example": "iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAIAAADTED8xAAABpklEQVR42u3BAQ0AAADCoPdPbQ8HFAAAAAAAAAAAAAAAAAA..."
                              },
                              "qrCodeUrl": {
                                "type": "string",
                                "format": "uri",
                                "description": "7-day signed GCS URL of the QR code PNG"
                              },
                              "qrCodeExpiresAt": {
                                "type": "number",
                                "description": "Unix timestamp (ms) when qrCodeUrl expires"
                              },
                              "receivingAddress": {
                                "type": "string",
                                "description": "The wallet address where funds should be sent",
                                "example": "0xAbCdEf0123456789AbCdEf0123456789AbCdEf01"
                              },
                              "tokenContract": {
                                "type": "string",
                                "description": "The ERC20 token contract address",
                                "example": "0x765DE816845861e75A25fCA122bb6898B8B1282a"
                              },
                              "decimals": {
                                "type": "number",
                                "description": "Token decimals (default 18)",
                                "example": 18
                              }
                            },
                            "required": [
                              "address",
                              "network",
                              "depositType"
                            ],
                            "description": "Crypto Deposit Information"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "base64QRCode": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Base64 encoded QR code",
                                "example": "base64QRCode"
                              },
                              "qrCodeString": {
                                "type": "string",
                                "minLength": 1,
                                "description": "The Pix copy-and-paste code (BR Code payload) the payer pastes into their bank app. Pass it through unchanged — it carries its own checksum.",
                                "example": "qrCodeString"
                              },
                              "referenceCode": {
                                "type": "string",
                                "minLength": 1,
                                "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order",
                                "example": "REF123456"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "exclusiveMinimum": true,
                                "description": "The monetary value to be deposited into the bank. This amount should be positive and accurately reflect the intended deposit.",
                                "example": 1000
                              },
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "PIX"
                                ]
                              }
                            },
                            "required": [
                              "base64QRCode",
                              "qrCodeString",
                              "referenceCode",
                              "amount",
                              "depositType"
                            ],
                            "description": "Pix Deposit Information"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "CREDIT_CARD"
                                ]
                              }
                            },
                            "required": [
                              "depositType"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "bankName": {
                                "type": "string",
                                "description": "Name of the bank (present when the rail provides it)"
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Name of the account holder (present when the rail provides it)"
                              },
                              "clabe": {
                                "type": "string",
                                "description": "CLABE number"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Bank account number (e.g. from the BANK_TRANSFER payment method)"
                              },
                              "reference": {
                                "type": "string",
                                "description": "Payment reference (e.g. from the BANK_TRANSFER payment method)"
                              },
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "CLABE"
                                ],
                                "description": "Type of the deposit"
                              }
                            },
                            "required": [
                              "clabe",
                              "depositType"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "url": {
                                "type": "string",
                                "description": "URL of the PSE payment"
                              },
                              "amountPrefilled": {
                                "type": "boolean",
                                "description": "Whether the payment page already carries the amount. When false or absent, the payer must enter it."
                              },
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "PSE"
                                ],
                                "description": "Type of the deposit"
                              }
                            },
                            "required": [
                              "url",
                              "depositType"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BALANCE"
                                ]
                              }
                            },
                            "required": [
                              "depositType"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "PENDING"
                                ]
                              },
                              "currency": {
                                "type": "string",
                                "description": "Currency of the deposit"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the order/deposit"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount. It can be 0 while bank transfer details are open-amount or still being provisioned."
                              },
                              "extraDepositMethods": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "methodType": {
                                      "type": "string",
                                      "enum": [
                                        "HOSTED_CHECKOUT"
                                      ],
                                      "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                                    },
                                    "url": {
                                      "type": "string",
                                      "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                                      "example": "https://checkout.example.com/pay/abc123"
                                    },
                                    "callbackUrl": {
                                      "type": "string",
                                      "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Payment reference for this method (equals the deposit/order reference)"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                                    },
                                    "currency": {
                                      "type": "string",
                                      "description": "Currency of this method"
                                    },
                                    "expiresAt": {
                                      "type": "number",
                                      "description": "Unix ms after which `url` is no longer valid, when known"
                                    }
                                  },
                                  "required": [
                                    "methodType",
                                    "url"
                                  ],
                                  "description": "An additional, optional way to pay this deposit"
                                },
                                "description": "Additional ways to pay while the bank details are being provisioned (e.g. a hosted card page). Optional — ignore it and wait for the bank details if you only support bank transfer."
                              },
                              "pendingReason": {
                                "type": "string",
                                "enum": [
                                  "collection_account_activating",
                                  "accountless_per_account_corridor"
                                ],
                                "description": "Why the instructions are still being provisioned, when the reason is known. `collection_account_activating` means the collection account for this payer is being activated and payable details are expected shortly. `accountless_per_account_corridor` means this corridor collects only into a collection account dedicated to the paying account, this request names no account, and none can be created for it — so payable details will NOT arrive by waiting; create the deposit against an account instead. Absence never conveys timing on either surface: here it means only that no reason is classifiable, and an account-level deposit-method instruction never carries the field at all. Treat the values as an open set and ignore any you do not recognise."
                              }
                            },
                            "required": [
                              "depositType",
                              "currency",
                              "referenceCode",
                              "amount"
                            ],
                            "description": "Deposit details are being provisioned; poll the order/deposit or wait for webhook"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "IMPS"
                                ]
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Name of the bank"
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Name of the account holder"
                              },
                              "ifsc": {
                                "type": "string",
                                "description": "ifsc number"
                              },
                              "type": {
                                "type": "string",
                                "description": "Type of the deposit"
                              },
                              "branch": {
                                "type": "string",
                                "description": "Branch of the bank"
                              },
                              "bank": {
                                "type": "string",
                                "description": "Bank of the account"
                              },
                              "otp": {
                                "type": "string",
                                "description": "OTP of the deposit"
                              },
                              "bankNotes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "number",
                                      "description": "Type of note: -1 for warning, 1 for info"
                                    },
                                    "msg": {
                                      "type": "string",
                                      "description": "Message content"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "msg"
                                  ]
                                },
                                "description": "Additional bank instructions"
                              }
                            },
                            "required": [
                              "depositType",
                              "accountNumber",
                              "bankName",
                              "accountHolder",
                              "ifsc",
                              "type",
                              "branch",
                              "bank",
                              "otp"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "UPI"
                                ]
                              },
                              "vpa": {
                                "type": "string",
                                "description": "Virtual Payment Address"
                              },
                              "name": {
                                "type": "string",
                                "description": "Name of the account holder"
                              },
                              "otp": {
                                "type": "string",
                                "description": "OTP for the transaction"
                              },
                              "paymentLink": {
                                "type": "string",
                                "description": "Payment link"
                              },
                              "upiNotes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "number",
                                      "description": "Type of note: -1 for warning, 1 for info"
                                    },
                                    "msg": {
                                      "type": "string",
                                      "description": "Message content"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "msg"
                                  ]
                                },
                                "description": "Additional UPI instructions"
                              }
                            },
                            "required": [
                              "depositType",
                              "vpa",
                              "name",
                              "otp",
                              "paymentLink"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "AED_BANK_TRANSFER"
                                ]
                              },
                              "iban": {
                                "type": "string",
                                "description": "International Bank Account Number"
                              },
                              "name": {
                                "type": "string",
                                "description": "Name of the account holder"
                              },
                              "bank": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "type": {
                                "type": "string",
                                "description": "Account type"
                              },
                              "address": {
                                "type": "string",
                                "description": "Bank address"
                              },
                              "email": {
                                "type": "string",
                                "description": "Contact email"
                              },
                              "phoneNumber": {
                                "type": "string",
                                "description": "Contact phone number"
                              },
                              "transferCode": {
                                "type": "string",
                                "description": "Transfer code"
                              },
                              "poBox": {
                                "type": "string",
                                "description": "P.O. Box"
                              },
                              "otp": {
                                "type": "string",
                                "description": "OTP for the transaction"
                              },
                              "bankNotes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "number",
                                      "description": "Type of note: -1 for warning, 1 for info"
                                    },
                                    "msg": {
                                      "type": "string",
                                      "description": "Message content"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "msg"
                                  ]
                                },
                                "description": "Additional bank instructions"
                              }
                            },
                            "required": [
                              "depositType",
                              "iban",
                              "name",
                              "bank",
                              "type",
                              "address",
                              "email",
                              "phoneNumber",
                              "transferCode",
                              "poBox",
                              "otp"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "SPEI"
                                ]
                              },
                              "clabe": {
                                "type": "string",
                                "description": "CLABE number"
                              },
                              "name": {
                                "type": "string",
                                "description": "Name of the account holder"
                              },
                              "bank": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankNotes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "number",
                                      "description": "Type of note: -1 for warning, 1 for info"
                                    },
                                    "msg": {
                                      "type": "string",
                                      "description": "Message content"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "msg"
                                  ]
                                },
                                "description": "Additional bank instructions"
                              }
                            },
                            "required": [
                              "depositType",
                              "clabe",
                              "name",
                              "bank"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "TRY_BANK_TRANSFER"
                                ]
                              },
                              "iban": {
                                "type": "string",
                                "description": "International Bank Account Number"
                              },
                              "name": {
                                "type": "string",
                                "description": "Name of the account holder"
                              },
                              "bank": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "otp": {
                                "type": "string",
                                "description": "OTP for the transaction"
                              },
                              "bankNotes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "number",
                                      "description": "Type of note: -1 for warning, 1 for info"
                                    },
                                    "msg": {
                                      "type": "string",
                                      "description": "Message content"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "msg"
                                  ]
                                },
                                "description": "Additional bank instructions"
                              }
                            },
                            "required": [
                              "depositType",
                              "iban",
                              "name",
                              "bank",
                              "otp"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "IDR_BANK_TRANSFER"
                                ]
                              },
                              "virtualAccount": {
                                "type": "string",
                                "description": "Virtual account number"
                              },
                              "name": {
                                "type": "string",
                                "description": "Name of the account holder"
                              },
                              "bank": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankNotes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "number",
                                      "description": "Type of note: -1 for warning, 1 for info"
                                    },
                                    "msg": {
                                      "type": "string",
                                      "description": "Message content"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "msg"
                                  ]
                                },
                                "description": "Additional bank instructions"
                              }
                            },
                            "required": [
                              "depositType",
                              "virtualAccount",
                              "name",
                              "bank"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "THAI_QR"
                                ]
                              },
                              "qrCode": {
                                "type": "string",
                                "description": "QR code"
                              },
                              "otp": {
                                "type": "string",
                                "description": "OTP for the transaction"
                              },
                              "bankNotes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "number",
                                      "description": "Type of note: -1 for warning, 1 for info"
                                    },
                                    "msg": {
                                      "type": "string",
                                      "description": "Message content"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "msg"
                                  ]
                                },
                                "description": "Additional bank instructions"
                              }
                            },
                            "required": [
                              "depositType",
                              "qrCode",
                              "otp"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "VIET_QR"
                                ]
                              },
                              "qrCode": {
                                "type": "string",
                                "description": "QR code"
                              },
                              "otp": {
                                "type": "string",
                                "description": "OTP for the transaction"
                              },
                              "bankNotes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "number",
                                      "description": "Type of note: -1 for warning, 1 for info"
                                    },
                                    "msg": {
                                      "type": "string",
                                      "description": "Message content"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "msg"
                                  ]
                                },
                                "description": "Additional bank instructions"
                              }
                            },
                            "required": [
                              "depositType",
                              "qrCode",
                              "otp"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "GCASH"
                                ]
                              },
                              "qrCode": {
                                "type": "string",
                                "description": "QR code"
                              },
                              "otp": {
                                "type": "string",
                                "description": "OTP for the transaction"
                              },
                              "bankNotes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "number",
                                      "description": "Type of note: -1 for warning, 1 for info"
                                    },
                                    "msg": {
                                      "type": "string",
                                      "description": "Message content"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "msg"
                                  ]
                                },
                                "description": "Additional bank instructions"
                              }
                            },
                            "required": [
                              "depositType",
                              "qrCode",
                              "otp"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "ARGENTINA_BANK_TRANSFER"
                                ]
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Account number"
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "accountNumber"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "ACH_US"
                                ]
                              },
                              "routingNumber": {
                                "type": "string",
                                "description": "US bank ABA routing number"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "US bank account number"
                              },
                              "beneficiaryName": {
                                "type": "string",
                                "description": "Beneficiary name on the account"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Name of the bank"
                              },
                              "bankAddress": {
                                "type": "string",
                                "description": "Address of the bank"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names (e.g. ACH, Wire)"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount in USD"
                              },
                              "referenceCode": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Reference code to include in the wire/ACH transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "routingNumber",
                              "accountNumber",
                              "beneficiaryName",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "ACH_PULL"
                                ]
                              }
                            },
                            "required": [
                              "depositType"
                            ],
                            "description": "Funds are pulled from the holder's own linked US bank account; no transfer instructions apply"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "LOCALBANK"
                                ],
                                "description": "Deprecated generic local-bank payin type. Superseded by the corridor-specific deposit types (e.g. SEPA, ACH_US, GBP_BANK_TRANSFER, CLABE/SPEI, PIX, ARGENTINA_BANK_TRANSFER, BANK_DEPOSIT_<CC>). Still returned on some corridors and on historical records, so integrators must continue to handle it. Discover the applicable per-currency method via GET /v1/currencies/{currency}/payin-schema.",
                                "deprecated": true
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "GBP_BANK_TRANSFER"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "UK bank account number"
                              },
                              "sortCode": {
                                "type": "string",
                                "description": "UK sort code"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Name of the bank"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names (e.g. Faster Payments, CHAPS, BACS)"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount in GBP"
                              },
                              "referenceCode": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Reference code to include in the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "accountHolder",
                              "accountNumber",
                              "sortCode",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_COL"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_CL"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_BO"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_BR"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_NG"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_KE"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_GH"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_ZA"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_TZ"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_UG"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_RW"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_MW"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_ZM"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_BW"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_CD"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_XOF"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_XAF"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_NG"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_KE"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_GH"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_ZA"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_TZ"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_UG"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_RW"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_MW"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_ZM"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_BW"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_CD"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_XOF"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_XAF"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          }
                        ],
                        "description": "Details of the deposit",
                        "examples": [
                          {
                            "accountHolder": "John Doe",
                            "iban": "DE8937XXXXXXXXXXXX3000",
                            "bic": "COBADEFFXXX",
                            "bankName": "Commerzbank",
                            "bankAddress": "Mainzer Landstrasse 151-153",
                            "bankCity": "Frankfurt",
                            "bankZipcode": "60327",
                            "bankCountry": "DE",
                            "amount": 1000,
                            "referenceCode": "ABC123",
                            "depositType": "SEPA"
                          }
                        ]
                      },
                      "depositInfoPending": {
                        "type": "boolean",
                        "description": "True while the payment instructions are still being prepared. Poll this deposit until it is false (or absent) before showing the instructions to the payer."
                      },
                      "complianceHold": {
                        "type": "object",
                        "properties": {
                          "reason": {
                            "type": "string",
                            "enum": [
                              "screening",
                              "fiat_monitoring"
                            ],
                            "description": "Compliance hold reason"
                          }
                        },
                        "required": [
                          "reason"
                        ],
                        "description": "Present while the inbound transfer funding this deposit is held in provider compliance review. The deposit stays Reviewing (amount 0, never credited) until the hold clears (promote to Received) or the transfer is rejected/returned (terminalize)."
                      }
                    },
                    "required": [
                      "depositId",
                      "createdAt",
                      "expectedAmount",
                      "amount",
                      "currency",
                      "fee",
                      "expectedFee",
                      "feeCurrency",
                      "status",
                      "depositInfo"
                    ],
                    "description": "Details of the deposit associated with the order"
                  },
                  "trade": {
                    "type": "object",
                    "properties": {
                      "tradeId": {
                        "type": "string",
                        "description": "ID of the trade",
                        "example": "123e4567-e89b-12d3-a456-426614174000"
                      },
                      "createdAt": {
                        "type": "number",
                        "description": "Creation time of the trade",
                        "example": 1723027132
                      },
                      "pair": {
                        "type": "string",
                        "description": "Asset pair to trade",
                        "example": "BTC/EUR"
                      },
                      "tradeType": {
                        "type": "string",
                        "enum": [
                          "buy",
                          "sell"
                        ],
                        "description": "Type of trade"
                      },
                      "volume": {
                        "type": "number",
                        "minimum": 0,
                        "exclusiveMinimum": true,
                        "description": "Order quantity in lots",
                        "example": 0.5
                      },
                      "price": {
                        "type": "number",
                        "minimum": 0,
                        "exclusiveMinimum": true,
                        "description": "Price at which to place the order based on the pair",
                        "example": 30000
                      },
                      "conversionRate": {
                        "type": "number",
                        "minimum": 0,
                        "exclusiveMinimum": true,
                        "description": "Conversion rate at which to place the order based on the pair",
                        "example": 30000
                      },
                      "fee": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Fee for the trade",
                        "example": 0.1
                      },
                      "feeCurrency": {
                        "type": "string",
                        "description": "Currency of the fee",
                        "example": "EUR"
                      },
                      "userEmail": {
                        "type": "string",
                        "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                        "description": "Email of the user making the trade",
                        "example": "user@example.com"
                      }
                    },
                    "required": [
                      "tradeId",
                      "createdAt",
                      "pair",
                      "tradeType",
                      "volume",
                      "fee",
                      "feeCurrency",
                      "userEmail"
                    ],
                    "description": "Details of the trade associated with the order"
                  },
                  "withdraw": {
                    "type": "object",
                    "properties": {
                      "withdrawalId": {
                        "anyOf": [
                          {
                            "type": "string",
                            "minLength": 12,
                            "maxLength": 12,
                            "pattern": "^[A-Z0-9]{12}$",
                            "examples": [
                              "01CLFXMT67II",
                              "2R7E5Y5KFXP8",
                              "4FWWRE3Y2URM"
                            ]
                          },
                          {
                            "type": "string",
                            "format": "uuid"
                          }
                        ],
                        "description": "ID of the withdrawal"
                      },
                      "userData": {
                        "oneOf": [
                          {
                            "type": "object",
                            "properties": {
                              "userType": {
                                "type": "string",
                                "enum": [
                                  "individual"
                                ]
                              },
                              "firstName": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 50,
                                "description": "First name of the user making the deposit (or representative for business)",
                                "examples": [
                                  "John",
                                  "Alice",
                                  "Bob"
                                ]
                              },
                              "lastName": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "Last name of the user making the deposit (or representative for business)",
                                "examples": [
                                  "Doe",
                                  "Smith",
                                  "Johnson"
                                ]
                              },
                              "userEmail": {
                                "type": "string",
                                "maxLength": 254,
                                "format": "email",
                                "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                "description": "Email of the user making the deposit",
                                "examples": [
                                  "user@virtuabroker.com",
                                  "john.doe@example.com",
                                  "alice@example.com"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "maxLength": 150,
                                "description": "Address of the user making the deposit",
                                "examples": [
                                  "123 Main St, Anytown, ES",
                                  "456 Elm St, Anytown, ES",
                                  "789 Oak St, Anytown, ES"
                                ]
                              },
                              "taxDocumentType": {
                                "type": "string",
                                "maxLength": 50,
                                "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                "examples": [
                                  "CC",
                                  "NIT",
                                  "CE",
                                  "NIF",
                                  "Other"
                                ]
                              },
                              "taxId": {
                                "type": "string",
                                "maxLength": 30,
                                "description": "Tax ID of the user making the deposit",
                                "examples": [
                                  "123-45-6789",
                                  "987-65-4321",
                                  "111-22-3333"
                                ]
                              },
                              "country": {
                                "type": "string",
                                "enum": [
                                  "US",
                                  "CA",
                                  "GB",
                                  "DE",
                                  "FR",
                                  "AU",
                                  "JP",
                                  "KR",
                                  "SE",
                                  "NO",
                                  "DK",
                                  "FI",
                                  "NL",
                                  "BE",
                                  "CH",
                                  "AT",
                                  "NZ",
                                  "SG",
                                  "IE",
                                  "LU",
                                  "PT",
                                  "ES",
                                  "IT",
                                  "GR",
                                  "CZ",
                                  "PL",
                                  "HU",
                                  "SK",
                                  "SI",
                                  "EE",
                                  "LT",
                                  "LV",
                                  "IS",
                                  "MT",
                                  "CY",
                                  "HR",
                                  "RO",
                                  "BG",
                                  "BR",
                                  "AR",
                                  "CL",
                                  "MX",
                                  "CO",
                                  "PE",
                                  "PA",
                                  "UY",
                                  "BO",
                                  "ZA",
                                  "NG",
                                  "KE",
                                  "GH",
                                  "TZ",
                                  "UG",
                                  "RW",
                                  "MW",
                                  "ZM",
                                  "BW",
                                  "CD",
                                  "CI",
                                  "CM",
                                  "IL",
                                  "AE",
                                  "QA",
                                  "SA",
                                  "OM",
                                  "KW",
                                  "BH",
                                  "MY",
                                  "PH",
                                  "TH",
                                  "VN",
                                  "ID",
                                  "IN",
                                  "LK",
                                  "NP",
                                  "BD",
                                  "PK",
                                  "EG",
                                  "MA",
                                  "DZ",
                                  "TN",
                                  "JO",
                                  "LB",
                                  "TR",
                                  "KH",
                                  "MM",
                                  "LA",
                                  "EN",
                                  "BT",
                                  "VE",
                                  "TW",
                                  "HK",
                                  "CN"
                                ],
                                "description": "Country code of the user making the deposit",
                                "examples": [
                                  "ES",
                                  "US",
                                  "GB"
                                ]
                              },
                              "state": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "State of the user making the deposit",
                                "examples": [
                                  "Madrid",
                                  "New York",
                                  "London"
                                ]
                              },
                              "postalCode": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 30,
                                "description": "Postal code of the user making the deposit",
                                "examples": [
                                  "12345",
                                  "67890",
                                  "abcde"
                                ]
                              },
                              "city": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "City of the user making the deposit",
                                "examples": [
                                  "Madrid",
                                  "New York",
                                  "London"
                                ]
                              },
                              "dob": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 30,
                                "description": "Date of birth of the user making the deposit",
                                "examples": [
                                  "1990-01-01",
                                  "1995-05-15",
                                  "1988-12-31"
                                ]
                              },
                              "phoneNumber": {
                                "type": "string",
                                "maxLength": 30,
                                "description": "Phone number of the user making the deposit",
                                "examples": [
                                  "+447700900123",
                                  "+447700900456",
                                  "+447700900789"
                                ]
                              },
                              "kycId": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 300,
                                "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                "examples": [
                                  "kyc-12345",
                                  "kyc-67890",
                                  "kyc-abcde"
                                ]
                              },
                              "activity": {
                                "type": "string",
                                "description": "Activity of the user making the deposit",
                                "examples": [
                                  "worker",
                                  "business",
                                  "student"
                                ]
                              }
                            },
                            "required": [
                              "userType",
                              "firstName",
                              "userEmail",
                              "country"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "userType": {
                                "type": "string",
                                "enum": [
                                  "business"
                                ]
                              },
                              "businessName": {
                                "type": "string",
                                "maxLength": 150,
                                "description": "Business name (required when userType is business)",
                                "examples": [
                                  "Acme Corp",
                                  "Tech Solutions Inc",
                                  "Global Services Ltd"
                                ]
                              },
                              "firstName": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 50,
                                "description": "First name of the user making the deposit (or representative for business)",
                                "examples": [
                                  "John",
                                  "Alice",
                                  "Bob"
                                ]
                              },
                              "userEmail": {
                                "type": "string",
                                "maxLength": 254,
                                "format": "email",
                                "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                "description": "Email of the user making the deposit",
                                "examples": [
                                  "user@virtuabroker.com",
                                  "john.doe@example.com",
                                  "alice@example.com"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "maxLength": 150,
                                "description": "Address of the user making the deposit",
                                "examples": [
                                  "123 Main St, Anytown, ES",
                                  "456 Elm St, Anytown, ES",
                                  "789 Oak St, Anytown, ES"
                                ]
                              },
                              "taxDocumentType": {
                                "type": "string",
                                "maxLength": 50,
                                "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                "examples": [
                                  "CC",
                                  "NIT",
                                  "CE",
                                  "NIF",
                                  "Other"
                                ]
                              },
                              "taxId": {
                                "type": "string",
                                "maxLength": 30,
                                "description": "Tax ID of the user making the deposit",
                                "examples": [
                                  "123-45-6789",
                                  "987-65-4321",
                                  "111-22-3333"
                                ]
                              },
                              "country": {
                                "type": "string",
                                "enum": [
                                  "US",
                                  "CA",
                                  "GB",
                                  "DE",
                                  "FR",
                                  "AU",
                                  "JP",
                                  "KR",
                                  "SE",
                                  "NO",
                                  "DK",
                                  "FI",
                                  "NL",
                                  "BE",
                                  "CH",
                                  "AT",
                                  "NZ",
                                  "SG",
                                  "IE",
                                  "LU",
                                  "PT",
                                  "ES",
                                  "IT",
                                  "GR",
                                  "CZ",
                                  "PL",
                                  "HU",
                                  "SK",
                                  "SI",
                                  "EE",
                                  "LT",
                                  "LV",
                                  "IS",
                                  "MT",
                                  "CY",
                                  "HR",
                                  "RO",
                                  "BG",
                                  "BR",
                                  "AR",
                                  "CL",
                                  "MX",
                                  "CO",
                                  "PE",
                                  "PA",
                                  "UY",
                                  "BO",
                                  "ZA",
                                  "NG",
                                  "KE",
                                  "GH",
                                  "TZ",
                                  "UG",
                                  "RW",
                                  "MW",
                                  "ZM",
                                  "BW",
                                  "CD",
                                  "CI",
                                  "CM",
                                  "IL",
                                  "AE",
                                  "QA",
                                  "SA",
                                  "OM",
                                  "KW",
                                  "BH",
                                  "MY",
                                  "PH",
                                  "TH",
                                  "VN",
                                  "ID",
                                  "IN",
                                  "LK",
                                  "NP",
                                  "BD",
                                  "PK",
                                  "EG",
                                  "MA",
                                  "DZ",
                                  "TN",
                                  "JO",
                                  "LB",
                                  "TR",
                                  "KH",
                                  "MM",
                                  "LA",
                                  "EN",
                                  "BT",
                                  "VE",
                                  "TW",
                                  "HK",
                                  "CN"
                                ],
                                "description": "Country code of the user making the deposit",
                                "examples": [
                                  "ES",
                                  "US",
                                  "GB"
                                ]
                              },
                              "state": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "State of the user making the deposit",
                                "examples": [
                                  "Madrid",
                                  "New York",
                                  "London"
                                ]
                              },
                              "postalCode": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 30,
                                "description": "Postal code of the user making the deposit",
                                "examples": [
                                  "12345",
                                  "67890",
                                  "abcde"
                                ]
                              },
                              "city": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "City of the user making the deposit",
                                "examples": [
                                  "Madrid",
                                  "New York",
                                  "London"
                                ]
                              },
                              "dob": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 30,
                                "description": "Date of birth of the user making the deposit",
                                "examples": [
                                  "1990-01-01",
                                  "1995-05-15",
                                  "1988-12-31"
                                ]
                              },
                              "phoneNumber": {
                                "type": "string",
                                "maxLength": 30,
                                "description": "Phone number of the user making the deposit",
                                "examples": [
                                  "+447700900123",
                                  "+447700900456",
                                  "+447700900789"
                                ]
                              },
                              "kycId": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 300,
                                "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                "examples": [
                                  "kyc-12345",
                                  "kyc-67890",
                                  "kyc-abcde"
                                ]
                              },
                              "activity": {
                                "type": "string",
                                "description": "Activity of the user making the deposit",
                                "examples": [
                                  "worker",
                                  "business",
                                  "student"
                                ]
                              }
                            },
                            "required": [
                              "userType",
                              "businessName",
                              "firstName",
                              "userEmail",
                              "country"
                            ]
                          }
                        ],
                        "description": "User data for the withdrawal"
                      },
                      "createdAt": {
                        "type": "number",
                        "description": "Creation time of the withdrawal",
                        "example": 1723027132
                      },
                      "updatedAt": {
                        "type": "number",
                        "description": "Last update time of the withdrawal",
                        "example": 1723027132
                      },
                      "userEmail": {
                        "type": "string",
                        "format": "email",
                        "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                        "description": "Email of the user making the request",
                        "example": "user@example.com"
                      },
                      "amount": {
                        "type": "number",
                        "description": "Amount to be withdrawn. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
                        "example": 1000
                      },
                      "currency": {
                        "type": "string",
                        "description": "Currency of the withdrawal",
                        "example": "EUR"
                      },
                      "fee": {
                        "type": "number",
                        "description": "Fee for the withdrawal. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
                        "example": 10
                      },
                      "feeCurrency": {
                        "type": "string",
                        "description": "Currency of the fee",
                        "example": "EUR"
                      },
                      "destinationTransferData": {
                        "oneOf": [
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BALANCE"
                                ]
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "Balance transfer details",
                            "title": "Balance"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "iban": {
                                "type": "string",
                                "description": "IBAN number"
                              },
                              "bic": {
                                "type": "string",
                                "description": "BIC number (optional)"
                              },
                              "country": {
                                "type": "string",
                                "description": "Country code"
                              },
                              "accountType": {
                                "type": "string",
                                "enum": [
                                  "PERSONAL",
                                  "BUSINESS"
                                ],
                                "default": "PERSONAL",
                                "description": "Account type (optional)"
                              },
                              "city": {
                                "type": "string",
                                "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                              },
                              "postalCode": {
                                "type": "string",
                                "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                              },
                              "address": {
                                "type": "string",
                                "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "SEPA"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "iban",
                              "country",
                              "type"
                            ],
                            "description": "SEPA transfer details",
                            "title": "SEPA"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "UK bank account number"
                              },
                              "sortCode": {
                                "type": "string",
                                "description": "UK sort code"
                              },
                              "country": {
                                "type": "string",
                                "enum": [
                                  "GB"
                                ],
                                "default": "GB",
                                "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                              },
                              "accountType": {
                                "type": "string",
                                "enum": [
                                  "PERSONAL",
                                  "BUSINESS"
                                ],
                                "default": "PERSONAL",
                                "description": "Account type (optional)"
                              },
                              "city": {
                                "type": "string",
                                "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                              },
                              "postalCode": {
                                "type": "string",
                                "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                              },
                              "address": {
                                "type": "string",
                                "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "GBP_BANK_TRANSFER"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "accountNumber",
                              "sortCode",
                              "type"
                            ],
                            "description": "GBP domestic bank transfer details",
                            "title": "BankDepositGB"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "US bank account number"
                              },
                              "routingNumber": {
                                "type": "string",
                                "description": "US ABA routing number"
                              },
                              "country": {
                                "type": "string",
                                "enum": [
                                  "US"
                                ],
                                "default": "US",
                                "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                              },
                              "accountType": {
                                "type": "string",
                                "enum": [
                                  "PERSONAL",
                                  "BUSINESS"
                                ],
                                "default": "PERSONAL",
                                "description": "Account type (optional)"
                              },
                              "bankAccountType": {
                                "type": "string",
                                "enum": [
                                  "CHECKING",
                                  "SAVINGS"
                                ],
                                "default": "CHECKING",
                                "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                              },
                              "city": {
                                "type": "string",
                                "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                              },
                              "postalCode": {
                                "type": "string",
                                "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                              },
                              "state": {
                                "type": "string",
                                "pattern": "^[A-Z]{2}$",
                                "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                              },
                              "address": {
                                "type": "string",
                                "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "ACH_US"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "accountNumber",
                              "routingNumber",
                              "state",
                              "type"
                            ],
                            "description": "USD ACH transfer details",
                            "title": "AchUS"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "linkedBankAccount"
                                ]
                              },
                              "accountLinkId": {
                                "type": "string",
                                "pattern": "^alnk_[0-9a-f]{24}$",
                                "description": "Identifier of one of the account holder own linked bank accounts",
                                "examples": [
                                  "alnk_0123456789abcdef01234567"
                                ]
                              }
                            },
                            "required": [
                              "type",
                              "accountLinkId"
                            ],
                            "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                            "title": "LinkedBankAccount",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "ETH"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "ETH destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "ETH"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MATIC"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "MATIC destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "MATIC"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "SOL"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "SOL destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "SOL"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "TRON"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "TRON destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "TRON"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "CELO"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "CELO destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "CELO"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BTC"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "BTC destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "BTC"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "SOLANA"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "SOLANA destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "SOLANA"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "XRP"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "XRP destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "XRP"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "CARDANO"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "CARDANO destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "CARDANO"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BSC"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "BSC destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "BSC"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "ARBITRUM"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "ARBITRUM destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "ARBITRUM"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "OPTIMISM"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "OPTIMISM destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "OPTIMISM"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "AVALANCHE"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "AVALANCHE destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "AVALANCHE"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BASE"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "BASE destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "BASE"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_COL"
                                ]
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Recipient ID document number. Required when creating or updating a destination."
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                            "title": "Bank Deposit COL"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "brebKey": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Bre-B key (llave) that identifies the recipient account"
                              },
                              "email": {
                                "type": "string",
                                "description": "Recipient email (optional contact for the Bre-B rail)"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Recipient phone number (optional contact for the Bre-B rail)"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BRE_B_COP"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "brebKey",
                              "type"
                            ],
                            "description": "Colombian Bre-B payout details",
                            "title": "Bre-B COP"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "pattern": "^\\d{4}$",
                                "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                              },
                              "destinationBankAccountNumber": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Recipient bank account number"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Recipient ID document number"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "ACH_COP"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankCode",
                              "destinationBankAccountNumber",
                              "destinationBankAccountType",
                              "destinationDocumentType",
                              "destinationTaxId",
                              "type"
                            ],
                            "description": "Colombian ACH payout details",
                            "title": "ACH COP"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (unused for TWD — no network discovery)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "minLength": 2,
                                "description": "Bank name (required — TWD payouts run over SWIFT)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_TW"
                                ]
                              },
                              "destinationBankBranch": {
                                "type": "string",
                                "minLength": 2,
                                "description": "Bank branch (required — TWD payouts run over SWIFT)"
                              },
                              "bic": {
                                "type": "string",
                                "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                                "description": "SWIFT BIC code (required for TWD payouts)"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "description": "Type of bank account (legacy, optional)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Tax ID of the recipient (legacy, optional)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "description": "Document type of the recipient (legacy, optional)"
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "destinationBankName",
                              "type",
                              "destinationBankBranch",
                              "bic"
                            ],
                            "description": "Taiwan bank deposit details (SWIFT payout)",
                            "title": "Bank Deposit TW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "description": "Bank code"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationBankBranch": {
                                "type": "string",
                                "description": "Bank branch"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Tax ID of the recipient"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_BR"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankCode",
                              "destinationBankAccount",
                              "destinationBankBranch",
                              "destinationTaxId",
                              "type"
                            ],
                            "description": "Brazilian bank deposit details",
                            "title": "Bank Deposit BR"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPixCode": {
                                "type": "string",
                                "description": "PIX code"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Tax ID of the recipient"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "PIX_BR"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPixCode",
                              "destinationTaxId",
                              "type"
                            ],
                            "description": "Brazilian PIX details",
                            "title": "PIX BR"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccountNumber": {
                                "type": "string",
                                "description": "Bank account number"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Name of the bank"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                                "description": "Tax ID of the recipient"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "description": "Type of bank account"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_VEN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccountNumber",
                              "destinationBankName",
                              "destinationTaxId",
                              "destinationBankAccountType",
                              "type"
                            ],
                            "description": "Venezuelan bank deposit details",
                            "title": "Bank Deposit VEN"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "description": "Bank code"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                                "description": "Tax ID of the recipient"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "description": "Type of bank account"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "PHONE_DEPOSIT_VEN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankCode",
                              "destinationPhoneNumber",
                              "destinationTaxId",
                              "destinationBankAccountType",
                              "type"
                            ],
                            "description": "Venezuelan phone deposit details",
                            "title": "Phone Deposit VEN"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationIFSC": {
                                "type": "string",
                                "description": "IFSC code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_IN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Bank Deposit IN",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationIFSC": {
                                "type": "string",
                                "description": "IFSC code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "IMPS"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "IMPS",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationIFSC": {
                                "type": "string",
                                "description": "IFSC code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "THAI_QR"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Thai QR",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationIFSC": {
                                "type": "string",
                                "description": "IFSC code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "VIET_QR"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Viet QR",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationIFSC": {
                                "type": "string",
                                "description": "IFSC code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "GCASH"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "GCash",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Tax ID"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_PAYMENT_IN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "destinationTaxId",
                              "type"
                            ],
                            "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Mobile Payment IN",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "description": "Bank code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_VN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "destinationBankCode",
                              "type"
                            ],
                            "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Bank Deposit VN",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "bic": {
                                "type": "string",
                                "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "destinationAddress": {
                                "type": "string",
                                "description": "Address line 1 of the recipient"
                              },
                              "destinationCity": {
                                "type": "string",
                                "description": "Recipient city (defaults to Hong Kong)"
                              },
                              "accountHolderName": {
                                "type": "string",
                                "description": "Bank account holder name if different from payee"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_HK"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "bic",
                              "destinationBankName",
                              "destinationAddress",
                              "type"
                            ],
                            "description": "Hong Kong bank deposit details (HKD bank corridor)",
                            "title": "Bank Deposit HK"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "pattern": "^\\d+$",
                                "description": "CNAPS / bank institution code (numeric, variable length)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "destinationAddress": {
                                "type": "string",
                                "description": "Address line 1 of the recipient"
                              },
                              "destinationCity": {
                                "type": "string",
                                "description": "Recipient city"
                              },
                              "destinationState": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                              },
                              "destinationPostcode": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                              },
                              "destinationPhone": {
                                "type": "string",
                                "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                              },
                              "accountHolderName": {
                                "type": "string",
                                "description": "Bank account holder name if different from payee"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_CN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "destinationBankCode",
                              "destinationBankName",
                              "destinationAddress",
                              "destinationCity",
                              "destinationState",
                              "destinationPostcode",
                              "type"
                            ],
                            "description": "China mainland bank deposit details (CNY bank corridor)",
                            "title": "Bank Deposit CN"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_AR"
                                ]
                              },
                              "destinationCBU": {
                                "type": "string",
                                "description": "CBU — 22-digit bank account key (legacy, optional)"
                              },
                              "destinationCVU": {
                                "type": "string",
                                "description": "CVU — 22-digit virtual account key (legacy, optional)"
                              },
                              "destinationAlias": {
                                "type": "string",
                                "description": "Account alias (legacy, optional)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "description": "Document type of the recipient (legacy, optional)"
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Argentinian bank deposit details",
                            "title": "Bank Deposit AR"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Recipient bank name (required for Chilean bank payouts)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_CL"
                                ]
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "minLength": 1,
                                "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "description": "Document type of the recipient (legacy, optional)"
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "destinationBankName",
                              "type",
                              "destinationBankAccountType",
                              "destinationTaxId"
                            ],
                            "description": "Chilean bank deposit details",
                            "title": "Bank Deposit CL"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "minLength": 2,
                                "maxLength": 30,
                                "description": "Recipient name (required, 2–30 characters)"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 11,
                                "description": "Bank account number (max 11 digits for Bolivian accounts)"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (unused for BOB — no network discovery)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "maxLength": 20,
                                "description": "Bank name (optional, max 20 characters)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_BO"
                                ]
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 15,
                                "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type",
                              "destinationTaxId"
                            ],
                            "description": "Bolivian bank deposit details",
                            "title": "Bank Deposit BO"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_PE"
                                ]
                              },
                              "destinationCCI": {
                                "type": "string",
                                "description": "CCI — 20-digit interbank account code (legacy, optional)"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "description": "Account type (corriente/ahorro) (legacy, optional)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "description": "Document type of the recipient (legacy, optional)"
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "destinationNetworkId",
                              "type"
                            ],
                            "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Bank Deposit PE",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "pattern": "^\\d{3}$",
                                "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                              },
                              "destinationBankAccountNumber": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 20,
                                "description": "Recipient bank account number (max 20)"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "enum": [
                                  "CORRIENTE",
                                  "AHORROS",
                                  "PHONE"
                                ],
                                "description": "Bank account type"
                              },
                              "destinationCCI": {
                                "type": "string",
                                "pattern": "^\\d{1,20}$",
                                "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "enum": [
                                  "CC",
                                  "CE",
                                  "RUC",
                                  "PAS",
                                  "PAR",
                                  "LMI",
                                  "OTHER"
                                ],
                                "description": "Recipient identification type"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 50,
                                "description": "Recipient identification number (max 50)"
                              },
                              "email": {
                                "type": "string",
                                "pattern": "^.+@.+\\..+$",
                                "description": "Recipient email (required for PEN payouts)"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "pattern": "^\\d{1,9}$",
                                "description": "Recipient phone number (required, max 9 digits)"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_PEN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankCode",
                              "destinationBankAccountNumber",
                              "destinationBankAccountType",
                              "destinationCCI",
                              "destinationDocumentType",
                              "destinationTaxId",
                              "email",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Peruvian bank deposit details (bank-code payout corridor).",
                            "title": "Bank Deposit PEN"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_NG"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Nigeria bank deposit details",
                            "title": "Bank Deposit NG"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_KE"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Kenya bank deposit details",
                            "title": "Bank Deposit KE"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_GH"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Bank Deposit GH",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_ZA"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "South Africa bank deposit details",
                            "title": "Bank Deposit ZA"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_TZ"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Tanzania bank deposit details",
                            "title": "Bank Deposit TZ"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_UG"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Uganda bank deposit details",
                            "title": "Bank Deposit UG"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_RW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Rwanda bank deposit details",
                            "title": "Bank Deposit RW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_MW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Malawi bank deposit details",
                            "title": "Bank Deposit MW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_ZM"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Zambia bank deposit details",
                            "title": "Bank Deposit ZM"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_BW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Botswana bank deposit details",
                            "title": "Bank Deposit BW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_CD"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Bank Deposit CD",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_XOF"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "West African CFA bank deposit details",
                            "title": "Bank Deposit XOF"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_XAF"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Central African CFA bank deposit details",
                            "title": "Bank Deposit XAF"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_NG"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Nigeria mobile money details",
                            "title": "Mobile Money NG"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_KE"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Kenya mobile money details",
                            "title": "Mobile Money KE"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_GH"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Mobile Money GH",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_ZA"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "South Africa mobile money details",
                            "title": "Mobile Money ZA"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_TZ"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Tanzania mobile money details",
                            "title": "Mobile Money TZ"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_UG"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Uganda mobile money details",
                            "title": "Mobile Money UG"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_RW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Rwanda mobile money details",
                            "title": "Mobile Money RW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_MW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Malawi mobile money details",
                            "title": "Mobile Money MW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_ZM"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Zambia mobile money details",
                            "title": "Mobile Money ZM"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_BW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Botswana mobile money details",
                            "title": "Mobile Money BW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_CD"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Mobile Money CD",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_XOF"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "West African CFA mobile money details",
                            "title": "Mobile Money XOF"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_XAF"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Central African CFA mobile money details",
                            "title": "Mobile Money XAF"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "description": "Bank code"
                              },
                              "destinationBankAccountNumber": {
                                "type": "string",
                                "description": "Bank account number (18-digit CLABE)"
                              },
                              "numericReference": {
                                "type": "string",
                                "description": "Numeric reference"
                              },
                              "notesReference": {
                                "type": "string",
                                "description": "Notes reference"
                              },
                              "destinationClabe": {
                                "type": "string",
                                "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_MX"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccountNumber",
                              "type"
                            ],
                            "description": "Mexican bank deposit details",
                            "title": "Bank Deposit MX"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPseNumber": {
                                "type": "string",
                                "description": "PSE number"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "PSE"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPseNumber",
                              "type"
                            ],
                            "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "PSE",
                            "deprecated": true
                          }
                        ],
                        "description": "The details required for the end user destination transfer method."
                      },
                      "status": {
                        "anyOf": [
                          {
                            "type": "string",
                            "enum": [
                              "Pending",
                              "Processing",
                              "Success",
                              "Failed",
                              "Canceled",
                              "Reviewing"
                            ],
                            "description": "Common status values that are shared across all operation types",
                            "examples": [
                              "Pending",
                              "Processing",
                              "Success",
                              "Failed",
                              "Canceled",
                              "Reviewing"
                            ]
                          },
                          {
                            "type": "string",
                            "enum": [
                              "PendingCancel",
                              "PendingWithdrawal",
                              "PendingVerification",
                              "Pending2FA",
                              "Compliance",
                              "Accepted",
                              "Approved",
                              "Rejected",
                              "Review"
                            ]
                          }
                        ],
                        "description": "Status of the withdrawal",
                        "examples": [
                          "Pending",
                          "Pending2FA",
                          "Compliance",
                          "Accepted",
                          "Approved",
                          "Success",
                          "Failed",
                          "Review",
                          "Rejected"
                        ]
                      },
                      "withdrawalInfo": {
                        "oneOf": [
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BALANCE"
                                ]
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "Balance transfer details",
                            "title": "Balance"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "iban": {
                                "type": "string",
                                "description": "IBAN number"
                              },
                              "bic": {
                                "type": "string",
                                "description": "BIC number (optional)"
                              },
                              "country": {
                                "type": "string",
                                "description": "Country code"
                              },
                              "accountType": {
                                "type": "string",
                                "enum": [
                                  "PERSONAL",
                                  "BUSINESS"
                                ],
                                "default": "PERSONAL",
                                "description": "Account type (optional)"
                              },
                              "city": {
                                "type": "string",
                                "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                              },
                              "postalCode": {
                                "type": "string",
                                "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                              },
                              "address": {
                                "type": "string",
                                "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "SEPA"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "iban",
                              "country",
                              "type"
                            ],
                            "description": "SEPA transfer details",
                            "title": "SEPA"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "UK bank account number"
                              },
                              "sortCode": {
                                "type": "string",
                                "description": "UK sort code"
                              },
                              "country": {
                                "type": "string",
                                "enum": [
                                  "GB"
                                ],
                                "default": "GB",
                                "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                              },
                              "accountType": {
                                "type": "string",
                                "enum": [
                                  "PERSONAL",
                                  "BUSINESS"
                                ],
                                "default": "PERSONAL",
                                "description": "Account type (optional)"
                              },
                              "city": {
                                "type": "string",
                                "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                              },
                              "postalCode": {
                                "type": "string",
                                "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                              },
                              "address": {
                                "type": "string",
                                "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "GBP_BANK_TRANSFER"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "accountNumber",
                              "sortCode",
                              "type"
                            ],
                            "description": "GBP domestic bank transfer details",
                            "title": "BankDepositGB"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "US bank account number"
                              },
                              "routingNumber": {
                                "type": "string",
                                "description": "US ABA routing number"
                              },
                              "country": {
                                "type": "string",
                                "enum": [
                                  "US"
                                ],
                                "default": "US",
                                "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                              },
                              "accountType": {
                                "type": "string",
                                "enum": [
                                  "PERSONAL",
                                  "BUSINESS"
                                ],
                                "default": "PERSONAL",
                                "description": "Account type (optional)"
                              },
                              "bankAccountType": {
                                "type": "string",
                                "enum": [
                                  "CHECKING",
                                  "SAVINGS"
                                ],
                                "default": "CHECKING",
                                "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                              },
                              "city": {
                                "type": "string",
                                "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                              },
                              "postalCode": {
                                "type": "string",
                                "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                              },
                              "state": {
                                "type": "string",
                                "pattern": "^[A-Z]{2}$",
                                "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                              },
                              "address": {
                                "type": "string",
                                "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "ACH_US"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "accountNumber",
                              "routingNumber",
                              "state",
                              "type"
                            ],
                            "description": "USD ACH transfer details",
                            "title": "AchUS"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "linkedBankAccount"
                                ]
                              },
                              "accountLinkId": {
                                "type": "string",
                                "pattern": "^alnk_[0-9a-f]{24}$",
                                "description": "Identifier of one of the account holder own linked bank accounts",
                                "examples": [
                                  "alnk_0123456789abcdef01234567"
                                ]
                              }
                            },
                            "required": [
                              "type",
                              "accountLinkId"
                            ],
                            "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                            "title": "LinkedBankAccount",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "ETH"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "ETH destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "ETH"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MATIC"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "MATIC destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "MATIC"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "SOL"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "SOL destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "SOL"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "TRON"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "TRON destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "TRON"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "CELO"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "CELO destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "CELO"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BTC"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "BTC destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "BTC"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "SOLANA"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "SOLANA destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "SOLANA"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "XRP"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "XRP destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "XRP"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "CARDANO"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "CARDANO destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "CARDANO"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BSC"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "BSC destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "BSC"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "ARBITRUM"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "ARBITRUM destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "ARBITRUM"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "OPTIMISM"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "OPTIMISM destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "OPTIMISM"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "AVALANCHE"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "AVALANCHE destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "AVALANCHE"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BASE"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "BASE destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "BASE"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_COL"
                                ]
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Recipient ID document number. Required when creating or updating a destination."
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                            "title": "Bank Deposit COL"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "brebKey": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Bre-B key (llave) that identifies the recipient account"
                              },
                              "email": {
                                "type": "string",
                                "description": "Recipient email (optional contact for the Bre-B rail)"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Recipient phone number (optional contact for the Bre-B rail)"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BRE_B_COP"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "brebKey",
                              "type"
                            ],
                            "description": "Colombian Bre-B payout details",
                            "title": "Bre-B COP"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "pattern": "^\\d{4}$",
                                "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                              },
                              "destinationBankAccountNumber": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Recipient bank account number"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Recipient ID document number"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "ACH_COP"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankCode",
                              "destinationBankAccountNumber",
                              "destinationBankAccountType",
                              "destinationDocumentType",
                              "destinationTaxId",
                              "type"
                            ],
                            "description": "Colombian ACH payout details",
                            "title": "ACH COP"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (unused for TWD — no network discovery)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "minLength": 2,
                                "description": "Bank name (required — TWD payouts run over SWIFT)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_TW"
                                ]
                              },
                              "destinationBankBranch": {
                                "type": "string",
                                "minLength": 2,
                                "description": "Bank branch (required — TWD payouts run over SWIFT)"
                              },
                              "bic": {
                                "type": "string",
                                "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                                "description": "SWIFT BIC code (required for TWD payouts)"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "description": "Type of bank account (legacy, optional)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Tax ID of the recipient (legacy, optional)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "description": "Document type of the recipient (legacy, optional)"
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "destinationBankName",
                              "type",
                              "destinationBankBranch",
                              "bic"
                            ],
                            "description": "Taiwan bank deposit details (SWIFT payout)",
                            "title": "Bank Deposit TW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "description": "Bank code"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationBankBranch": {
                                "type": "string",
                                "description": "Bank branch"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Tax ID of the recipient"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_BR"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankCode",
                              "destinationBankAccount",
                              "destinationBankBranch",
                              "destinationTaxId",
                              "type"
                            ],
                            "description": "Brazilian bank deposit details",
                            "title": "Bank Deposit BR"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPixCode": {
                                "type": "string",
                                "description": "PIX code"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Tax ID of the recipient"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "PIX_BR"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPixCode",
                              "destinationTaxId",
                              "type"
                            ],
                            "description": "Brazilian PIX details",
                            "title": "PIX BR"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccountNumber": {
                                "type": "string",
                                "description": "Bank account number"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Name of the bank"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                                "description": "Tax ID of the recipient"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "description": "Type of bank account"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_VEN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccountNumber",
                              "destinationBankName",
                              "destinationTaxId",
                              "destinationBankAccountType",
                              "type"
                            ],
                            "description": "Venezuelan bank deposit details",
                            "title": "Bank Deposit VEN"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "description": "Bank code"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                                "description": "Tax ID of the recipient"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "description": "Type of bank account"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "PHONE_DEPOSIT_VEN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankCode",
                              "destinationPhoneNumber",
                              "destinationTaxId",
                              "destinationBankAccountType",
                              "type"
                            ],
                            "description": "Venezuelan phone deposit details",
                            "title": "Phone Deposit VEN"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationIFSC": {
                                "type": "string",
                                "description": "IFSC code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_IN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Bank Deposit IN",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationIFSC": {
                                "type": "string",
                                "description": "IFSC code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "IMPS"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "IMPS",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationIFSC": {
                                "type": "string",
                                "description": "IFSC code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "THAI_QR"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Thai QR",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationIFSC": {
                                "type": "string",
                                "description": "IFSC code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "VIET_QR"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Viet QR",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationIFSC": {
                                "type": "string",
                                "description": "IFSC code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "GCASH"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "GCash",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Tax ID"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_PAYMENT_IN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "destinationTaxId",
                              "type"
                            ],
                            "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Mobile Payment IN",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "description": "Bank code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_VN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "destinationBankCode",
                              "type"
                            ],
                            "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Bank Deposit VN",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "bic": {
                                "type": "string",
                                "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "destinationAddress": {
                                "type": "string",
                                "description": "Address line 1 of the recipient"
                              },
                              "destinationCity": {
                                "type": "string",
                                "description": "Recipient city (defaults to Hong Kong)"
                              },
                              "accountHolderName": {
                                "type": "string",
                                "description": "Bank account holder name if different from payee"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_HK"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "bic",
                              "destinationBankName",
                              "destinationAddress",
                              "type"
                            ],
                            "description": "Hong Kong bank deposit details (HKD bank corridor)",
                            "title": "Bank Deposit HK"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "pattern": "^\\d+$",
                                "description": "CNAPS / bank institution code (numeric, variable length)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "destinationAddress": {
                                "type": "string",
                                "description": "Address line 1 of the recipient"
                              },
                              "destinationCity": {
                                "type": "string",
                                "description": "Recipient city"
                              },
                              "destinationState": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                              },
                              "destinationPostcode": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                              },
                              "destinationPhone": {
                                "type": "string",
                                "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                              },
                              "accountHolderName": {
                                "type": "string",
                                "description": "Bank account holder name if different from payee"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_CN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "destinationBankCode",
                              "destinationBankName",
                              "destinationAddress",
                              "destinationCity",
                              "destinationState",
                              "destinationPostcode",
                              "type"
                            ],
                            "description": "China mainland bank deposit details (CNY bank corridor)",
                            "title": "Bank Deposit CN"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_AR"
                                ]
                              },
                              "destinationCBU": {
                                "type": "string",
                                "description": "CBU — 22-digit bank account key (legacy, optional)"
                              },
                              "destinationCVU": {
                                "type": "string",
                                "description": "CVU — 22-digit virtual account key (legacy, optional)"
                              },
                              "destinationAlias": {
                                "type": "string",
                                "description": "Account alias (legacy, optional)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "description": "Document type of the recipient (legacy, optional)"
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Argentinian bank deposit details",
                            "title": "Bank Deposit AR"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Recipient bank name (required for Chilean bank payouts)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_CL"
                                ]
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "minLength": 1,
                                "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "description": "Document type of the recipient (legacy, optional)"
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "destinationBankName",
                              "type",
                              "destinationBankAccountType",
                              "destinationTaxId"
                            ],
                            "description": "Chilean bank deposit details",
                            "title": "Bank Deposit CL"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "minLength": 2,
                                "maxLength": 30,
                                "description": "Recipient name (required, 2–30 characters)"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 11,
                                "description": "Bank account number (max 11 digits for Bolivian accounts)"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (unused for BOB — no network discovery)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "maxLength": 20,
                                "description": "Bank name (optional, max 20 characters)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_BO"
                                ]
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 15,
                                "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type",
                              "destinationTaxId"
                            ],
                            "description": "Bolivian bank deposit details",
                            "title": "Bank Deposit BO"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_PE"
                                ]
                              },
                              "destinationCCI": {
                                "type": "string",
                                "description": "CCI — 20-digit interbank account code (legacy, optional)"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "description": "Account type (corriente/ahorro) (legacy, optional)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "description": "Document type of the recipient (legacy, optional)"
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "destinationNetworkId",
                              "type"
                            ],
                            "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Bank Deposit PE",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "pattern": "^\\d{3}$",
                                "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                              },
                              "destinationBankAccountNumber": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 20,
                                "description": "Recipient bank account number (max 20)"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "enum": [
                                  "CORRIENTE",
                                  "AHORROS",
                                  "PHONE"
                                ],
                                "description": "Bank account type"
                              },
                              "destinationCCI": {
                                "type": "string",
                                "pattern": "^\\d{1,20}$",
                                "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "enum": [
                                  "CC",
                                  "CE",
                                  "RUC",
                                  "PAS",
                                  "PAR",
                                  "LMI",
                                  "OTHER"
                                ],
                                "description": "Recipient identification type"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 50,
                                "description": "Recipient identification number (max 50)"
                              },
                              "email": {
                                "type": "string",
                                "pattern": "^.+@.+\\..+$",
                                "description": "Recipient email (required for PEN payouts)"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "pattern": "^\\d{1,9}$",
                                "description": "Recipient phone number (required, max 9 digits)"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_PEN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankCode",
                              "destinationBankAccountNumber",
                              "destinationBankAccountType",
                              "destinationCCI",
                              "destinationDocumentType",
                              "destinationTaxId",
                              "email",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Peruvian bank deposit details (bank-code payout corridor).",
                            "title": "Bank Deposit PEN"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_NG"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Nigeria bank deposit details",
                            "title": "Bank Deposit NG"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_KE"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Kenya bank deposit details",
                            "title": "Bank Deposit KE"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_GH"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Bank Deposit GH",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_ZA"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "South Africa bank deposit details",
                            "title": "Bank Deposit ZA"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_TZ"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Tanzania bank deposit details",
                            "title": "Bank Deposit TZ"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_UG"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Uganda bank deposit details",
                            "title": "Bank Deposit UG"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_RW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Rwanda bank deposit details",
                            "title": "Bank Deposit RW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_MW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Malawi bank deposit details",
                            "title": "Bank Deposit MW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_ZM"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Zambia bank deposit details",
                            "title": "Bank Deposit ZM"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_BW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Botswana bank deposit details",
                            "title": "Bank Deposit BW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_CD"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Bank Deposit CD",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_XOF"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "West African CFA bank deposit details",
                            "title": "Bank Deposit XOF"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_XAF"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Central African CFA bank deposit details",
                            "title": "Bank Deposit XAF"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_NG"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Nigeria mobile money details",
                            "title": "Mobile Money NG"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_KE"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Kenya mobile money details",
                            "title": "Mobile Money KE"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_GH"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Mobile Money GH",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_ZA"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "South Africa mobile money details",
                            "title": "Mobile Money ZA"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_TZ"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Tanzania mobile money details",
                            "title": "Mobile Money TZ"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_UG"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Uganda mobile money details",
                            "title": "Mobile Money UG"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_RW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Rwanda mobile money details",
                            "title": "Mobile Money RW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_MW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Malawi mobile money details",
                            "title": "Mobile Money MW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_ZM"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Zambia mobile money details",
                            "title": "Mobile Money ZM"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_BW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Botswana mobile money details",
                            "title": "Mobile Money BW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_CD"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Mobile Money CD",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_XOF"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "West African CFA mobile money details",
                            "title": "Mobile Money XOF"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_XAF"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Central African CFA mobile money details",
                            "title": "Mobile Money XAF"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "description": "Bank code"
                              },
                              "destinationBankAccountNumber": {
                                "type": "string",
                                "description": "Bank account number (18-digit CLABE)"
                              },
                              "numericReference": {
                                "type": "string",
                                "description": "Numeric reference"
                              },
                              "notesReference": {
                                "type": "string",
                                "description": "Notes reference"
                              },
                              "destinationClabe": {
                                "type": "string",
                                "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_MX"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccountNumber",
                              "type"
                            ],
                            "description": "Mexican bank deposit details",
                            "title": "Bank Deposit MX"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPseNumber": {
                                "type": "string",
                                "description": "PSE number"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "PSE"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPseNumber",
                              "type"
                            ],
                            "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "PSE",
                            "deprecated": true
                          }
                        ],
                        "description": "Detailed withdrawal information",
                        "title": "WithdrawalInfo"
                      },
                      "source": {
                        "type": "string",
                        "enum": [
                          "ui",
                          "apiApp",
                          "externalApi",
                          "internal"
                        ],
                        "description": "Source of withdrawal creation",
                        "example": "externalApi"
                      },
                      "requires2FA": {
                        "type": "boolean",
                        "description": "Whether 2FA is required for this withdrawal",
                        "example": false
                      },
                      "twoFactorToken": {
                        "type": "string",
                        "description": "2FA token for email approval",
                        "example": "abc123"
                      },
                      "twoFactorApprovedAt": {
                        "type": "number",
                        "description": "Timestamp when 2FA was approved",
                        "example": 1723027132
                      },
                      "errorCode": {
                        "type": "string",
                        "description": "Error code when status is Review",
                        "example": "INSUFFICIENT_BALANCE"
                      },
                      "errorDetails": {
                        "type": "string",
                        "description": "Detailed error information",
                        "example": "Insufficient balance for withdrawal"
                      },
                      "reviewedBy": {
                        "type": "string",
                        "description": "Admin email who reviewed the withdrawal",
                        "example": "admin@example.com"
                      },
                      "reviewedAt": {
                        "type": "number",
                        "description": "Timestamp when review happened",
                        "example": 1723027132
                      }
                    },
                    "required": [
                      "withdrawalId",
                      "createdAt",
                      "amount",
                      "currency",
                      "fee",
                      "feeCurrency",
                      "status"
                    ],
                    "description": "Details of the withdrawal associated with the order"
                  },
                  "createdAt": {
                    "type": "number",
                    "description": "Creation time of the order (timestamp)",
                    "examples": [
                      1723027132,
                      1723027200,
                      1723027300
                    ]
                  },
                  "updatedAt": {
                    "type": "number",
                    "description": "Last update time of the order (timestamp)",
                    "examples": [
                      1723027132,
                      1723027200,
                      1723027300
                    ]
                  },
                  "status": {
                    "type": "string",
                    "enum": [
                      "Pending",
                      "Processing",
                      "Reviewing",
                      "Success",
                      "Failed",
                      "Canceled"
                    ],
                    "description": "Current status of the order",
                    "title": "OrderStatus",
                    "examples": [
                      "Pending",
                      "Processing",
                      "Reviewing",
                      "Success",
                      "Failed"
                    ]
                  },
                  "externalReference": {
                    "type": "string",
                    "description": "External reference of the order, as you supplied it on create."
                  },
                  "externalRefeference": {
                    "type": "string",
                    "description": "Deprecated misspelling of `externalReference` — same value. Read `externalReference` instead; this key remains for backward compatibility and will be removed in a future major version.",
                    "deprecated": true
                  },
                  "fee": {
                    "type": "number",
                    "minimum": 0,
                    "description": "Total fee for the order once all the execution is completed",
                    "examples": [
                      6.37,
                      8.5,
                      10.25
                    ]
                  },
                  "expectedFee": {
                    "type": "number",
                    "minimum": 0,
                    "exclusiveMinimum": true,
                    "description": "Expected fee given the initial deposit amount",
                    "examples": [
                      6.88,
                      9.2,
                      11.5
                    ]
                  },
                  "expectedGasFee": {
                    "type": "number",
                    "description": "Expected gas fee if the withdrawal is with crypto",
                    "examples": [
                      6.88,
                      8.5,
                      10.25
                    ]
                  },
                  "feeCurrency": {
                    "type": "string",
                    "description": "Currency of the fee",
                    "examples": [
                      "EUR",
                      "USD",
                      "GBP"
                    ]
                  }
                },
                "required": [
                  "orderId",
                  "createdAt",
                  "status",
                  "fee",
                  "expectedFee",
                  "feeCurrency"
                ],
                "description": "Data for order status update event"
              },
              {
                "type": "object",
                "properties": {
                  "orderId": {
                    "type": "string",
                    "description": "Order ID related to the OpenBanking payment"
                  },
                  "webFormId": {
                    "type": "string",
                    "description": "Hosted open-banking session id"
                  },
                  "status": {
                    "type": "string",
                    "description": "Current session status from the banking flow"
                  },
                  "payload": {
                    "nullable": true,
                    "description": "Raw payload from the open-banking callback"
                  }
                },
                "required": [
                  "orderId"
                ],
                "description": "Data for OpenBanking status update event",
                "example": {
                  "orderId": "order_12345",
                  "webFormId": "wf_abc123",
                  "status": "COMPLETED",
                  "payload": {
                    "raw": "...callback payload..."
                  }
                }
              },
              {
                "type": "object",
                "properties": {
                  "customerEmail": {
                    "type": "string"
                  },
                  "kycStatus": {
                    "type": "string",
                    "enum": [
                      "approved"
                    ]
                  },
                  "firstName": {
                    "type": "string"
                  },
                  "lastName": {
                    "type": "string"
                  },
                  "name": {
                    "type": "string"
                  },
                  "entityId": {
                    "type": "string"
                  },
                  "kycApproved": {
                    "type": "boolean",
                    "enum": [
                      true
                    ]
                  },
                  "timestamp": {
                    "type": "number"
                  }
                },
                "required": [
                  "customerEmail",
                  "kycStatus",
                  "firstName",
                  "lastName",
                  "name",
                  "entityId",
                  "kycApproved",
                  "timestamp"
                ],
                "description": "Only used with deprecated `type` `kyc_completed`. Prefer `verification_status_updated` payloads for new integrations.",
                "deprecated": true,
                "example": {
                  "customerEmail": "user@example.com",
                  "kycStatus": "approved",
                  "firstName": "Jane",
                  "lastName": "Doe",
                  "name": "Jane Doe",
                  "entityId": "entity-1",
                  "kycApproved": true,
                  "timestamp": 1710000000000
                }
              },
              {
                "type": "object",
                "properties": {
                  "eventId": {
                    "type": "string"
                  },
                  "occurredAt": {
                    "type": "number"
                  },
                  "verificationType": {
                    "type": "string",
                    "enum": [
                      "KYC"
                    ]
                  },
                  "customerEmail": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 254,
                    "format": "email",
                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                    "description": "Email address"
                  },
                  "entityId": {
                    "type": "string"
                  },
                  "status": {
                    "type": "string",
                    "enum": [
                      "PENDING",
                      "REVIEWING",
                      "IN_PROGRESS",
                      "APPROVED",
                      "REJECTED",
                      "NOT_AVAILABLE"
                    ]
                  },
                  "previousStatus": {
                    "type": "string",
                    "enum": [
                      "PENDING",
                      "REVIEWING",
                      "IN_PROGRESS",
                      "APPROVED",
                      "REJECTED",
                      "NOT_AVAILABLE"
                    ]
                  }
                },
                "required": [
                  "eventId",
                  "occurredAt",
                  "verificationType",
                  "customerEmail",
                  "entityId",
                  "status"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "eventId": {
                    "type": "string"
                  },
                  "occurredAt": {
                    "type": "number"
                  },
                  "verificationType": {
                    "type": "string",
                    "enum": [
                      "KYB"
                    ]
                  },
                  "emails": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 254,
                      "format": "email",
                      "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                      "description": "Email address"
                    }
                  },
                  "entityId": {
                    "type": "string"
                  },
                  "status": {
                    "type": "string",
                    "enum": [
                      "DRAFT",
                      "PENDING_REVIEW",
                      "APPROVED",
                      "REJECTED"
                    ]
                  },
                  "previousStatus": {
                    "type": "string",
                    "enum": [
                      "DRAFT",
                      "PENDING_REVIEW",
                      "APPROVED",
                      "REJECTED"
                    ]
                  }
                },
                "required": [
                  "eventId",
                  "occurredAt",
                  "verificationType",
                  "emails",
                  "entityId",
                  "status"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "description": "Stable, deterministic event id — deduplicate on this value.",
                    "example": "conversation:conv_123:message_created:msg_456"
                  },
                  "type": {
                    "type": "string",
                    "description": "Webhook event category (mirrors the top-level `type`)."
                  },
                  "api_version": {
                    "type": "string",
                    "description": "API version of the webhook event."
                  },
                  "workspaceId": {
                    "type": "string",
                    "description": "Workspace that owns the conversation."
                  },
                  "resourceType": {
                    "type": "string",
                    "enum": [
                      "conversation"
                    ]
                  },
                  "resourceId": {
                    "type": "string",
                    "description": "Conversation id."
                  },
                  "messageId": {
                    "type": "string",
                    "description": "Present only on `conversation_message_created`."
                  },
                  "status": {
                    "anyOf": [
                      {
                        "type": "string",
                        "enum": [
                          "open"
                        ]
                      },
                      {
                        "type": "string",
                        "enum": [
                          "pending_support"
                        ]
                      },
                      {
                        "type": "string",
                        "enum": [
                          "pending_account"
                        ]
                      },
                      {
                        "type": "string",
                        "enum": [
                          "closed"
                        ]
                      }
                    ],
                    "description": "Neutral conversation lifecycle status at the time of the event (internal operator vocabulary is never exposed)."
                  },
                  "senderType": {
                    "anyOf": [
                      {
                        "type": "string",
                        "enum": [
                          "account"
                        ]
                      },
                      {
                        "type": "string",
                        "enum": [
                          "support"
                        ]
                      },
                      {
                        "type": "string",
                        "enum": [
                          "system"
                        ]
                      }
                    ],
                    "description": "Neutral sender label of the last/triggering message."
                  },
                  "occurredAt": {
                    "type": "number",
                    "description": "Epoch millis when the canonical change occurred."
                  }
                },
                "required": [
                  "id",
                  "type",
                  "api_version",
                  "workspaceId",
                  "resourceType",
                  "resourceId",
                  "status",
                  "senderType",
                  "occurredAt"
                ],
                "description": "Data for conversation_created / conversation_updated / conversation_message_created events",
                "example": {
                  "id": "conversation:conv_123:message_created:msg_456",
                  "type": "conversation_message_created",
                  "api_version": "1.0",
                  "workspaceId": "ws_abc",
                  "resourceType": "conversation",
                  "resourceId": "conv_123",
                  "messageId": "msg_456",
                  "status": "open",
                  "senderType": "support",
                  "occurredAt": 1723027132000
                }
              },
              {
                "type": "object",
                "properties": {
                  "eventId": {
                    "type": "string",
                    "description": "Unique per notification; use it to deduplicate."
                  },
                  "occurredAt": {
                    "type": "number",
                    "description": "Unix epoch milliseconds."
                  },
                  "workspaceId": {
                    "type": "string"
                  },
                  "resourceType": {
                    "type": "string",
                    "enum": [
                      "deposit_hold"
                    ]
                  },
                  "resourceId": {
                    "type": "string",
                    "description": "The deposit hold id (`holdId`)."
                  },
                  "reason": {
                    "type": "string",
                    "enum": [
                      "travel_rule_origin"
                    ]
                  },
                  "action": {
                    "type": "string",
                    "enum": [
                      "declare_origin"
                    ]
                  },
                  "reminder": {
                    "type": "boolean",
                    "description": "`true` when this repeats an earlier notice."
                  },
                  "hold": {
                    "type": "object",
                    "properties": {
                      "holdId": {
                        "type": "string",
                        "description": "Deposit hold id.",
                        "example": "dhold_3f1c9a7be2d84c01a5f6e9b2"
                      },
                      "accountId": {
                        "type": "string",
                        "description": "Account the deposit belongs to."
                      },
                      "depositId": {
                        "type": "string",
                        "description": "The credited deposit; omitted until there is one."
                      },
                      "reason": {
                        "type": "string",
                        "enum": [
                          "travel_rule_origin"
                        ],
                        "description": "Why the deposit is held."
                      },
                      "status": {
                        "type": "string",
                        "enum": [
                          "declaration_required",
                          "declaring",
                          "declared",
                          "released"
                        ],
                        "description": "`declaration_required`: the deposit is held until you declare who sent it. `declaring`: a declaration is being filed; retry the same answer later if the call did not complete. `declared`: the declaration was filed; the deposit is credited as usual once released. `released`: the deposit is no longer held and no declaration from you is needed."
                      },
                      "amount": {
                        "type": "string",
                        "description": "Amount received, as a decimal string.",
                        "example": "10.00000000"
                      },
                      "currency": {
                        "type": "string",
                        "description": "Currency received.",
                        "example": "USDC"
                      },
                      "network": {
                        "type": "string",
                        "description": "Network the deposit arrived on.",
                        "example": "BASE"
                      },
                      "heldAt": {
                        "type": "string",
                        "description": "When the deposit was received (ISO 8601); omitted when unknown."
                      },
                      "createdAt": {
                        "type": "string",
                        "description": "When the hold was recorded (ISO 8601)."
                      },
                      "declaration": {
                        "type": "object",
                        "properties": {
                          "ownership": {
                            "type": "string",
                            "enum": [
                              "own",
                              "third_party"
                            ]
                          },
                          "thirdParty": {
                            "type": "object",
                            "properties": {
                              "name": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "First name of the person who sent the funds.",
                                "example": "Daniel"
                              },
                              "surname": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "Surname(s) of the person who sent the funds.",
                                "example": "García"
                              }
                            },
                            "required": [
                              "name",
                              "surname"
                            ],
                            "additionalProperties": false
                          },
                          "declaredBy": {
                            "type": "string",
                            "enum": [
                              "holder",
                              "workspace",
                              "ops",
                              "remembered"
                            ],
                            "description": "Who answered: the account holder, your workspace, our operations team on the holder’s behalf, or `remembered` — filed automatically because an earlier answer covered the same sending wallet for this account."
                          },
                          "declaredAt": {
                            "type": "string",
                            "description": "ISO 8601."
                          }
                        },
                        "required": [
                          "ownership",
                          "declaredBy",
                          "declaredAt"
                        ],
                        "description": "The declaration filed; omitted until there is one."
                      }
                    },
                    "required": [
                      "holdId",
                      "accountId",
                      "reason",
                      "status",
                      "amount",
                      "currency",
                      "network",
                      "createdAt"
                    ],
                    "additionalProperties": false,
                    "description": "The deposit hold, with null fields omitted."
                  }
                },
                "required": [
                  "eventId",
                  "occurredAt",
                  "workspaceId",
                  "resourceType",
                  "resourceId",
                  "reason",
                  "action",
                  "reminder",
                  "hold"
                ],
                "description": "Data for `deposit_action_required`",
                "example": {
                  "eventId": "dhold_3f1c9a7be2d84c01a5f6e9b2:1",
                  "occurredAt": 1790590800000,
                  "workspaceId": "ws_123",
                  "resourceType": "deposit_hold",
                  "resourceId": "dhold_3f1c9a7be2d84c01a5f6e9b2",
                  "reason": "travel_rule_origin",
                  "action": "declare_origin",
                  "reminder": false,
                  "hold": {
                    "holdId": "dhold_3f1c9a7be2d84c01a5f6e9b2",
                    "accountId": "holder@example.com",
                    "reason": "travel_rule_origin",
                    "status": "declaration_required",
                    "amount": "10.00000000",
                    "currency": "USDC",
                    "network": "BASE",
                    "heldAt": "2026-09-28T10:12:21.075Z",
                    "createdAt": "2026-09-28T10:13:07.000Z"
                  }
                }
              }
            ],
            "description": "Data associated with the webhook event"
          }
        },
        "required": [
          "type",
          "id",
          "api_version",
          "apiKey",
          "data"
        ],
        "description": "Payload POSTed to your registered webhook URL. For verification, implement `verification_status_updated` first; treat `kyc_completed` as legacy-only."
      },
      "WebhookResponse": {
        "type": "object",
        "properties": {},
        "description": "Response schema for webhook events"
      },
      "GetWebhookConfigRequest": {
        "type": "object",
        "properties": {}
      },
      "GetWebhookConfigResponse": {
        "type": "object",
        "properties": {
          "url": {
            "type": "string",
            "nullable": true,
            "format": "uri",
            "description": "Webhook URL for the client"
          },
          "updatedAt": {
            "type": "number",
            "description": "Timestamp when the webhook URL was last updated"
          },
          "createdAt": {
            "type": "number",
            "description": "Timestamp when the webhook configuration was first created"
          }
        },
        "required": [
          "url",
          "updatedAt",
          "createdAt"
        ],
        "description": "Current webhook configuration for the client",
        "example": {
          "url": "https://api.example.com/webhooks/virtuabroker",
          "updatedAt": 1704067200000,
          "createdAt": 1704067200000
        }
      },
      "UpdateWebhookConfigRequest": {
        "type": "object",
        "properties": {
          "url": {
            "type": "string",
            "format": "uri",
            "description": "New webhook URL for the client",
            "example": "https://api.example.com/webhooks/virtuabroker"
          },
          "apiKey": {
            "type": "string",
            "description": "Optional API key echoed back on every outgoing webhook so you can authenticate incoming requests on your endpoint. Omit to keep the currently stored value.",
            "example": "whk_live_xxx"
          }
        },
        "required": [
          "url"
        ]
      },
      "UpdateWebhookConfigResponse": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean",
            "description": "Whether the webhook configuration was updated successfully"
          },
          "url": {
            "type": "string",
            "format": "uri",
            "description": "The updated webhook URL"
          },
          "updatedAt": {
            "type": "number",
            "description": "Timestamp when the webhook URL was updated"
          }
        },
        "required": [
          "success",
          "url",
          "updatedAt"
        ],
        "description": "Response after updating webhook configuration",
        "example": {
          "success": true,
          "url": "https://api.example.com/webhooks/virtuabroker",
          "updatedAt": 1704067200000
        }
      },
      "ETH": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "ETH"
            ]
          },
          "address": {
            "type": "string",
            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
          },
          "memo": {
            "type": "string",
            "description": "Memo for the wallet, when the chain uses one"
          },
          "txId": {
            "type": "string",
            "description": "Blockchain transaction ID"
          },
          "txUrlScan": {
            "type": "string",
            "description": "Blockchain explorer URL for the transaction"
          },
          "destinationWalletAddress": {
            "type": "string",
            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
          },
          "destinationWalletMemo": {
            "type": "string",
            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
          },
          "destinationNetwork": {
            "type": "string",
            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
          },
          "destinationNetworkId": {
            "type": "string",
            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
          },
          "destinationCurrencySymbol": {
            "type": "string",
            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
          }
        },
        "required": [
          "type"
        ],
        "description": "ETH destination details",
        "anyOf": [
          {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
              }
            }
          },
          {
            "required": [
              "destinationWalletAddress"
            ],
            "properties": {
              "destinationWalletAddress": {
                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
              }
            }
          }
        ],
        "title": "ETH"
      },
      "MATIC": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "MATIC"
            ]
          },
          "address": {
            "type": "string",
            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
          },
          "memo": {
            "type": "string",
            "description": "Memo for the wallet, when the chain uses one"
          },
          "txId": {
            "type": "string",
            "description": "Blockchain transaction ID"
          },
          "txUrlScan": {
            "type": "string",
            "description": "Blockchain explorer URL for the transaction"
          },
          "destinationWalletAddress": {
            "type": "string",
            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
          },
          "destinationWalletMemo": {
            "type": "string",
            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
          },
          "destinationNetwork": {
            "type": "string",
            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
          },
          "destinationNetworkId": {
            "type": "string",
            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
          },
          "destinationCurrencySymbol": {
            "type": "string",
            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
          }
        },
        "required": [
          "type"
        ],
        "description": "MATIC destination details",
        "anyOf": [
          {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
              }
            }
          },
          {
            "required": [
              "destinationWalletAddress"
            ],
            "properties": {
              "destinationWalletAddress": {
                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
              }
            }
          }
        ],
        "title": "MATIC"
      },
      "SOL": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "SOL"
            ]
          },
          "address": {
            "type": "string",
            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
          },
          "memo": {
            "type": "string",
            "description": "Memo for the wallet, when the chain uses one"
          },
          "txId": {
            "type": "string",
            "description": "Blockchain transaction ID"
          },
          "txUrlScan": {
            "type": "string",
            "description": "Blockchain explorer URL for the transaction"
          },
          "destinationWalletAddress": {
            "type": "string",
            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
          },
          "destinationWalletMemo": {
            "type": "string",
            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
          },
          "destinationNetwork": {
            "type": "string",
            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
          },
          "destinationNetworkId": {
            "type": "string",
            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
          },
          "destinationCurrencySymbol": {
            "type": "string",
            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
          }
        },
        "required": [
          "type"
        ],
        "description": "SOL destination details",
        "anyOf": [
          {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "pattern": "\\S"
              }
            }
          },
          {
            "required": [
              "destinationWalletAddress"
            ],
            "properties": {
              "destinationWalletAddress": {
                "pattern": "\\S"
              }
            }
          }
        ],
        "title": "SOL"
      },
      "TRON": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "TRON"
            ]
          },
          "address": {
            "type": "string",
            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
          },
          "memo": {
            "type": "string",
            "description": "Memo for the wallet, when the chain uses one"
          },
          "txId": {
            "type": "string",
            "description": "Blockchain transaction ID"
          },
          "txUrlScan": {
            "type": "string",
            "description": "Blockchain explorer URL for the transaction"
          },
          "destinationWalletAddress": {
            "type": "string",
            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
          },
          "destinationWalletMemo": {
            "type": "string",
            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
          },
          "destinationNetwork": {
            "type": "string",
            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
          },
          "destinationNetworkId": {
            "type": "string",
            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
          },
          "destinationCurrencySymbol": {
            "type": "string",
            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
          }
        },
        "required": [
          "type"
        ],
        "description": "TRON destination details",
        "anyOf": [
          {
            "required": [
              "address"
            ],
            "properties": {
              "address": {
                "pattern": "\\S"
              }
            }
          },
          {
            "required": [
              "destinationWalletAddress"
            ],
            "properties": {
              "destinationWalletAddress": {
                "pattern": "\\S"
              }
            }
          }
        ],
        "title": "TRON"
      },
      "BankDepositCOL": {
        "type": "object",
        "properties": {
          "destinationName": {
            "type": "string",
            "description": "Name of the recipient"
          },
          "destinationBankAccount": {
            "type": "string",
            "description": "Bank account"
          },
          "destinationNetworkId": {
            "type": "string",
            "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
          },
          "destinationBankName": {
            "type": "string",
            "description": "Bank name (used to resolve the network when id is omitted)"
          },
          "country": {
            "type": "string",
            "description": "ISO 3166 country code"
          },
          "type": {
            "type": "string",
            "enum": [
              "BANK_DEPOSIT_COL"
            ]
          },
          "destinationBankCode": {
            "type": "string",
            "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
          },
          "destinationBankAccountType": {
            "type": "string",
            "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
          },
          "destinationTaxId": {
            "type": "string",
            "description": "Recipient ID document number. Required when creating or updating a destination."
          },
          "destinationDocumentType": {
            "type": "string",
            "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
          }
        },
        "required": [
          "destinationName",
          "destinationBankAccount",
          "type"
        ],
        "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
        "title": "Bank Deposit COL"
      },
      "BreBCOP": {
        "type": "object",
        "properties": {
          "destinationName": {
            "type": "string",
            "description": "Name of the recipient"
          },
          "brebKey": {
            "type": "string",
            "minLength": 1,
            "description": "Bre-B key (llave) that identifies the recipient account"
          },
          "email": {
            "type": "string",
            "description": "Recipient email (optional contact for the Bre-B rail)"
          },
          "destinationPhoneNumber": {
            "type": "string",
            "description": "Recipient phone number (optional contact for the Bre-B rail)"
          },
          "type": {
            "type": "string",
            "enum": [
              "BRE_B_COP"
            ]
          }
        },
        "required": [
          "destinationName",
          "brebKey",
          "type"
        ],
        "description": "Colombian Bre-B payout details",
        "title": "Bre-B COP"
      },
      "AchCOP": {
        "type": "object",
        "properties": {
          "destinationName": {
            "type": "string",
            "description": "Name of the recipient"
          },
          "destinationBankCode": {
            "type": "string",
            "pattern": "^\\d{4}$",
            "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
          },
          "destinationBankAccountNumber": {
            "type": "string",
            "minLength": 1,
            "description": "Recipient bank account number"
          },
          "destinationBankAccountType": {
            "type": "string",
            "minLength": 1,
            "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
          },
          "destinationDocumentType": {
            "type": "string",
            "minLength": 1,
            "description": "Recipient ID document type (e.g. CC / CE / NIT)"
          },
          "destinationTaxId": {
            "type": "string",
            "minLength": 1,
            "description": "Recipient ID document number"
          },
          "type": {
            "type": "string",
            "enum": [
              "ACH_COP"
            ]
          }
        },
        "required": [
          "destinationName",
          "destinationBankCode",
          "destinationBankAccountNumber",
          "destinationBankAccountType",
          "destinationDocumentType",
          "destinationTaxId",
          "type"
        ],
        "description": "Colombian ACH payout details",
        "title": "ACH COP"
      },
      "BankDepositBR": {
        "type": "object",
        "properties": {
          "destinationName": {
            "type": "string",
            "description": "Name of the recipient"
          },
          "destinationBankCode": {
            "type": "string",
            "description": "Bank code"
          },
          "destinationBankAccount": {
            "type": "string",
            "description": "Bank account"
          },
          "destinationBankBranch": {
            "type": "string",
            "description": "Bank branch"
          },
          "destinationTaxId": {
            "type": "string",
            "description": "Tax ID of the recipient"
          },
          "type": {
            "type": "string",
            "enum": [
              "BANK_DEPOSIT_BR"
            ]
          }
        },
        "required": [
          "destinationName",
          "destinationBankCode",
          "destinationBankAccount",
          "destinationBankBranch",
          "destinationTaxId",
          "type"
        ],
        "description": "Brazilian bank deposit details",
        "title": "Bank Deposit BR"
      },
      "PixBR": {
        "type": "object",
        "properties": {
          "destinationName": {
            "type": "string",
            "description": "Name of the recipient"
          },
          "destinationPixCode": {
            "type": "string",
            "description": "PIX code"
          },
          "destinationTaxId": {
            "type": "string",
            "description": "Tax ID of the recipient"
          },
          "type": {
            "type": "string",
            "enum": [
              "PIX_BR"
            ]
          }
        },
        "required": [
          "destinationName",
          "destinationPixCode",
          "destinationTaxId",
          "type"
        ],
        "description": "Brazilian PIX details",
        "title": "PIX BR"
      },
      "BankDepositVEN": {
        "type": "object",
        "properties": {
          "destinationName": {
            "type": "string",
            "description": "Name of the recipient"
          },
          "destinationBankAccountNumber": {
            "type": "string",
            "description": "Bank account number"
          },
          "destinationBankName": {
            "type": "string",
            "description": "Name of the bank"
          },
          "destinationTaxId": {
            "type": "string",
            "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
            "description": "Tax ID of the recipient"
          },
          "destinationBankAccountType": {
            "type": "string",
            "description": "Type of bank account"
          },
          "type": {
            "type": "string",
            "enum": [
              "BANK_DEPOSIT_VEN"
            ]
          }
        },
        "required": [
          "destinationName",
          "destinationBankAccountNumber",
          "destinationBankName",
          "destinationTaxId",
          "destinationBankAccountType",
          "type"
        ],
        "description": "Venezuelan bank deposit details",
        "title": "Bank Deposit VEN"
      },
      "PhoneDepositVEN": {
        "type": "object",
        "properties": {
          "destinationName": {
            "type": "string",
            "description": "Name of the recipient"
          },
          "destinationBankCode": {
            "type": "string",
            "description": "Bank code"
          },
          "destinationPhoneNumber": {
            "type": "string",
            "description": "Phone number"
          },
          "destinationTaxId": {
            "type": "string",
            "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
            "description": "Tax ID of the recipient"
          },
          "destinationBankAccountType": {
            "type": "string",
            "description": "Type of bank account"
          },
          "type": {
            "type": "string",
            "enum": [
              "PHONE_DEPOSIT_VEN"
            ]
          }
        },
        "required": [
          "destinationName",
          "destinationBankCode",
          "destinationPhoneNumber",
          "destinationTaxId",
          "destinationBankAccountType",
          "type"
        ],
        "description": "Venezuelan phone deposit details",
        "title": "Phone Deposit VEN"
      },
      "BankDepositMX": {
        "type": "object",
        "properties": {
          "destinationName": {
            "type": "string",
            "description": "Name of the recipient"
          },
          "destinationBankCode": {
            "type": "string",
            "description": "Bank code"
          },
          "destinationBankAccountNumber": {
            "type": "string",
            "description": "Bank account number (18-digit CLABE)"
          },
          "numericReference": {
            "type": "string",
            "description": "Numeric reference"
          },
          "notesReference": {
            "type": "string",
            "description": "Notes reference"
          },
          "destinationClabe": {
            "type": "string",
            "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
          },
          "destinationTaxId": {
            "type": "string",
            "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
          },
          "type": {
            "type": "string",
            "enum": [
              "BANK_DEPOSIT_MX"
            ]
          }
        },
        "required": [
          "destinationName",
          "destinationBankAccountNumber",
          "type"
        ],
        "description": "Mexican bank deposit details",
        "title": "Bank Deposit MX"
      },
      "DebitCardMX": {
        "type": "object",
        "properties": {
          "destinationName": {
            "type": "string",
            "description": "Name of the recipient"
          },
          "destinationBankCode": {
            "type": "string",
            "description": "Bank code"
          },
          "destinationBankAccountNumber": {
            "type": "string",
            "description": "Bank account number"
          },
          "numericReference": {
            "type": "string",
            "description": "Numeric reference"
          },
          "notesReference": {
            "type": "string",
            "description": "Notes reference"
          },
          "type": {
            "type": "string",
            "enum": [
              "DEBIT_CARD_MX"
            ]
          }
        },
        "required": [
          "destinationName",
          "destinationBankCode",
          "destinationBankAccountNumber",
          "numericReference",
          "notesReference",
          "type"
        ],
        "description": "Mexican debit card details",
        "title": "Debit Card MX"
      },
      "MobileNumberMX": {
        "type": "object",
        "properties": {
          "destinationName": {
            "type": "string",
            "description": "Name of the recipient"
          },
          "destinationBankCode": {
            "type": "string",
            "description": "Bank code"
          },
          "destinationPhoneNumber": {
            "type": "string",
            "description": "Phone number"
          },
          "numericReference": {
            "type": "string",
            "description": "Numeric reference"
          },
          "notesReference": {
            "type": "string",
            "description": "Notes reference"
          },
          "destinationRFC": {
            "type": "string",
            "description": "RFC number"
          },
          "type": {
            "type": "string",
            "enum": [
              "MOBILE_NUMBER_MX"
            ]
          }
        },
        "required": [
          "destinationName",
          "destinationBankCode",
          "destinationPhoneNumber",
          "numericReference",
          "notesReference",
          "destinationRFC",
          "type"
        ],
        "description": "Mexican mobile number details",
        "title": "Mobile Number MX"
      },
      "BankDepositAR": {
        "type": "object",
        "properties": {
          "destinationName": {
            "type": "string",
            "description": "Name of the recipient"
          },
          "destinationBankAccount": {
            "type": "string",
            "description": "Bank account"
          },
          "destinationNetworkId": {
            "type": "string",
            "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
          },
          "destinationBankName": {
            "type": "string",
            "description": "Bank name (used to resolve the network when id is omitted)"
          },
          "country": {
            "type": "string",
            "description": "ISO 3166 country code"
          },
          "type": {
            "type": "string",
            "enum": [
              "BANK_DEPOSIT_AR"
            ]
          },
          "destinationCBU": {
            "type": "string",
            "description": "CBU — 22-digit bank account key (legacy, optional)"
          },
          "destinationCVU": {
            "type": "string",
            "description": "CVU — 22-digit virtual account key (legacy, optional)"
          },
          "destinationAlias": {
            "type": "string",
            "description": "Account alias (legacy, optional)"
          },
          "destinationTaxId": {
            "type": "string",
            "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
          },
          "destinationDocumentType": {
            "type": "string",
            "description": "Document type of the recipient (legacy, optional)"
          }
        },
        "required": [
          "destinationName",
          "destinationBankAccount",
          "type"
        ],
        "description": "Argentinian bank deposit details",
        "title": "Bank Deposit AR"
      },
      "Balance": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "BALANCE"
            ]
          }
        },
        "required": [
          "type"
        ],
        "description": "Balance transfer details",
        "title": "Balance"
      },
      "DestinationDetails": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "BALANCE"
                ]
              }
            },
            "required": [
              "type"
            ],
            "description": "Balance transfer details",
            "title": "Balance"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "iban": {
                "type": "string",
                "description": "IBAN number"
              },
              "bic": {
                "type": "string",
                "description": "BIC number (optional)"
              },
              "country": {
                "type": "string",
                "description": "Country code"
              },
              "accountType": {
                "type": "string",
                "enum": [
                  "PERSONAL",
                  "BUSINESS"
                ],
                "default": "PERSONAL",
                "description": "Account type (optional)"
              },
              "city": {
                "type": "string",
                "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
              },
              "postalCode": {
                "type": "string",
                "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
              },
              "address": {
                "type": "string",
                "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
              },
              "type": {
                "type": "string",
                "enum": [
                  "SEPA"
                ]
              }
            },
            "required": [
              "destinationName",
              "iban",
              "country",
              "type"
            ],
            "description": "SEPA transfer details",
            "title": "SEPA"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "accountNumber": {
                "type": "string",
                "description": "UK bank account number"
              },
              "sortCode": {
                "type": "string",
                "description": "UK sort code"
              },
              "country": {
                "type": "string",
                "enum": [
                  "GB"
                ],
                "default": "GB",
                "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
              },
              "accountType": {
                "type": "string",
                "enum": [
                  "PERSONAL",
                  "BUSINESS"
                ],
                "default": "PERSONAL",
                "description": "Account type (optional)"
              },
              "city": {
                "type": "string",
                "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
              },
              "postalCode": {
                "type": "string",
                "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
              },
              "address": {
                "type": "string",
                "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
              },
              "type": {
                "type": "string",
                "enum": [
                  "GBP_BANK_TRANSFER"
                ]
              }
            },
            "required": [
              "destinationName",
              "accountNumber",
              "sortCode",
              "type"
            ],
            "description": "GBP domestic bank transfer details",
            "title": "BankDepositGB"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "accountNumber": {
                "type": "string",
                "description": "US bank account number"
              },
              "routingNumber": {
                "type": "string",
                "description": "US ABA routing number"
              },
              "country": {
                "type": "string",
                "enum": [
                  "US"
                ],
                "default": "US",
                "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
              },
              "accountType": {
                "type": "string",
                "enum": [
                  "PERSONAL",
                  "BUSINESS"
                ],
                "default": "PERSONAL",
                "description": "Account type (optional)"
              },
              "bankAccountType": {
                "type": "string",
                "enum": [
                  "CHECKING",
                  "SAVINGS"
                ],
                "default": "CHECKING",
                "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
              },
              "city": {
                "type": "string",
                "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
              },
              "postalCode": {
                "type": "string",
                "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
              },
              "state": {
                "type": "string",
                "pattern": "^[A-Z]{2}$",
                "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
              },
              "address": {
                "type": "string",
                "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
              },
              "type": {
                "type": "string",
                "enum": [
                  "ACH_US"
                ]
              }
            },
            "required": [
              "destinationName",
              "accountNumber",
              "routingNumber",
              "state",
              "type"
            ],
            "description": "USD ACH transfer details",
            "title": "AchUS"
          },
          {
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "linkedBankAccount"
                ]
              },
              "accountLinkId": {
                "type": "string",
                "pattern": "^alnk_[0-9a-f]{24}$",
                "description": "Identifier of one of the account holder own linked bank accounts",
                "examples": [
                  "alnk_0123456789abcdef01234567"
                ]
              }
            },
            "required": [
              "type",
              "accountLinkId"
            ],
            "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
            "title": "LinkedBankAccount",
            "deprecated": true
          },
          {
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "ETH"
                ]
              },
              "address": {
                "type": "string",
                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
              },
              "memo": {
                "type": "string",
                "description": "Memo for the wallet, when the chain uses one"
              },
              "txId": {
                "type": "string",
                "description": "Blockchain transaction ID"
              },
              "txUrlScan": {
                "type": "string",
                "description": "Blockchain explorer URL for the transaction"
              },
              "destinationWalletAddress": {
                "type": "string",
                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
              },
              "destinationWalletMemo": {
                "type": "string",
                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
              },
              "destinationNetwork": {
                "type": "string",
                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
              },
              "destinationCurrencySymbol": {
                "type": "string",
                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
              }
            },
            "required": [
              "type"
            ],
            "description": "ETH destination details",
            "anyOf": [
              {
                "required": [
                  "address"
                ],
                "properties": {
                  "address": {
                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                  }
                }
              },
              {
                "required": [
                  "destinationWalletAddress"
                ],
                "properties": {
                  "destinationWalletAddress": {
                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                  }
                }
              }
            ],
            "title": "ETH"
          },
          {
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "MATIC"
                ]
              },
              "address": {
                "type": "string",
                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
              },
              "memo": {
                "type": "string",
                "description": "Memo for the wallet, when the chain uses one"
              },
              "txId": {
                "type": "string",
                "description": "Blockchain transaction ID"
              },
              "txUrlScan": {
                "type": "string",
                "description": "Blockchain explorer URL for the transaction"
              },
              "destinationWalletAddress": {
                "type": "string",
                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
              },
              "destinationWalletMemo": {
                "type": "string",
                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
              },
              "destinationNetwork": {
                "type": "string",
                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
              },
              "destinationCurrencySymbol": {
                "type": "string",
                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
              }
            },
            "required": [
              "type"
            ],
            "description": "MATIC destination details",
            "anyOf": [
              {
                "required": [
                  "address"
                ],
                "properties": {
                  "address": {
                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                  }
                }
              },
              {
                "required": [
                  "destinationWalletAddress"
                ],
                "properties": {
                  "destinationWalletAddress": {
                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                  }
                }
              }
            ],
            "title": "MATIC"
          },
          {
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "SOL"
                ]
              },
              "address": {
                "type": "string",
                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
              },
              "memo": {
                "type": "string",
                "description": "Memo for the wallet, when the chain uses one"
              },
              "txId": {
                "type": "string",
                "description": "Blockchain transaction ID"
              },
              "txUrlScan": {
                "type": "string",
                "description": "Blockchain explorer URL for the transaction"
              },
              "destinationWalletAddress": {
                "type": "string",
                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
              },
              "destinationWalletMemo": {
                "type": "string",
                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
              },
              "destinationNetwork": {
                "type": "string",
                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
              },
              "destinationCurrencySymbol": {
                "type": "string",
                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
              }
            },
            "required": [
              "type"
            ],
            "description": "SOL destination details",
            "anyOf": [
              {
                "required": [
                  "address"
                ],
                "properties": {
                  "address": {
                    "pattern": "\\S"
                  }
                }
              },
              {
                "required": [
                  "destinationWalletAddress"
                ],
                "properties": {
                  "destinationWalletAddress": {
                    "pattern": "\\S"
                  }
                }
              }
            ],
            "title": "SOL"
          },
          {
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "TRON"
                ]
              },
              "address": {
                "type": "string",
                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
              },
              "memo": {
                "type": "string",
                "description": "Memo for the wallet, when the chain uses one"
              },
              "txId": {
                "type": "string",
                "description": "Blockchain transaction ID"
              },
              "txUrlScan": {
                "type": "string",
                "description": "Blockchain explorer URL for the transaction"
              },
              "destinationWalletAddress": {
                "type": "string",
                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
              },
              "destinationWalletMemo": {
                "type": "string",
                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
              },
              "destinationNetwork": {
                "type": "string",
                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
              },
              "destinationCurrencySymbol": {
                "type": "string",
                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
              }
            },
            "required": [
              "type"
            ],
            "description": "TRON destination details",
            "anyOf": [
              {
                "required": [
                  "address"
                ],
                "properties": {
                  "address": {
                    "pattern": "\\S"
                  }
                }
              },
              {
                "required": [
                  "destinationWalletAddress"
                ],
                "properties": {
                  "destinationWalletAddress": {
                    "pattern": "\\S"
                  }
                }
              }
            ],
            "title": "TRON"
          },
          {
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "CELO"
                ]
              },
              "address": {
                "type": "string",
                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
              },
              "memo": {
                "type": "string",
                "description": "Memo for the wallet, when the chain uses one"
              },
              "txId": {
                "type": "string",
                "description": "Blockchain transaction ID"
              },
              "txUrlScan": {
                "type": "string",
                "description": "Blockchain explorer URL for the transaction"
              },
              "destinationWalletAddress": {
                "type": "string",
                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
              },
              "destinationWalletMemo": {
                "type": "string",
                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
              },
              "destinationNetwork": {
                "type": "string",
                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
              },
              "destinationCurrencySymbol": {
                "type": "string",
                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
              }
            },
            "required": [
              "type"
            ],
            "description": "CELO destination details",
            "anyOf": [
              {
                "required": [
                  "address"
                ],
                "properties": {
                  "address": {
                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                  }
                }
              },
              {
                "required": [
                  "destinationWalletAddress"
                ],
                "properties": {
                  "destinationWalletAddress": {
                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                  }
                }
              }
            ],
            "title": "CELO"
          },
          {
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "BTC"
                ]
              },
              "address": {
                "type": "string",
                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
              },
              "memo": {
                "type": "string",
                "description": "Memo for the wallet, when the chain uses one"
              },
              "txId": {
                "type": "string",
                "description": "Blockchain transaction ID"
              },
              "txUrlScan": {
                "type": "string",
                "description": "Blockchain explorer URL for the transaction"
              },
              "destinationWalletAddress": {
                "type": "string",
                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
              },
              "destinationWalletMemo": {
                "type": "string",
                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
              },
              "destinationNetwork": {
                "type": "string",
                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
              },
              "destinationCurrencySymbol": {
                "type": "string",
                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
              }
            },
            "required": [
              "type"
            ],
            "description": "BTC destination details",
            "anyOf": [
              {
                "required": [
                  "address"
                ],
                "properties": {
                  "address": {
                    "pattern": "\\S"
                  }
                }
              },
              {
                "required": [
                  "destinationWalletAddress"
                ],
                "properties": {
                  "destinationWalletAddress": {
                    "pattern": "\\S"
                  }
                }
              }
            ],
            "title": "BTC"
          },
          {
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "SOLANA"
                ]
              },
              "address": {
                "type": "string",
                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
              },
              "memo": {
                "type": "string",
                "description": "Memo for the wallet, when the chain uses one"
              },
              "txId": {
                "type": "string",
                "description": "Blockchain transaction ID"
              },
              "txUrlScan": {
                "type": "string",
                "description": "Blockchain explorer URL for the transaction"
              },
              "destinationWalletAddress": {
                "type": "string",
                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
              },
              "destinationWalletMemo": {
                "type": "string",
                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
              },
              "destinationNetwork": {
                "type": "string",
                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
              },
              "destinationCurrencySymbol": {
                "type": "string",
                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
              }
            },
            "required": [
              "type"
            ],
            "description": "SOLANA destination details",
            "anyOf": [
              {
                "required": [
                  "address"
                ],
                "properties": {
                  "address": {
                    "pattern": "\\S"
                  }
                }
              },
              {
                "required": [
                  "destinationWalletAddress"
                ],
                "properties": {
                  "destinationWalletAddress": {
                    "pattern": "\\S"
                  }
                }
              }
            ],
            "title": "SOLANA"
          },
          {
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "XRP"
                ]
              },
              "address": {
                "type": "string",
                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
              },
              "memo": {
                "type": "string",
                "description": "Memo for the wallet, when the chain uses one"
              },
              "txId": {
                "type": "string",
                "description": "Blockchain transaction ID"
              },
              "txUrlScan": {
                "type": "string",
                "description": "Blockchain explorer URL for the transaction"
              },
              "destinationWalletAddress": {
                "type": "string",
                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
              },
              "destinationWalletMemo": {
                "type": "string",
                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
              },
              "destinationNetwork": {
                "type": "string",
                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
              },
              "destinationCurrencySymbol": {
                "type": "string",
                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
              }
            },
            "required": [
              "type"
            ],
            "description": "XRP destination details",
            "anyOf": [
              {
                "required": [
                  "address"
                ],
                "properties": {
                  "address": {
                    "pattern": "\\S"
                  }
                }
              },
              {
                "required": [
                  "destinationWalletAddress"
                ],
                "properties": {
                  "destinationWalletAddress": {
                    "pattern": "\\S"
                  }
                }
              }
            ],
            "title": "XRP"
          },
          {
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "CARDANO"
                ]
              },
              "address": {
                "type": "string",
                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
              },
              "memo": {
                "type": "string",
                "description": "Memo for the wallet, when the chain uses one"
              },
              "txId": {
                "type": "string",
                "description": "Blockchain transaction ID"
              },
              "txUrlScan": {
                "type": "string",
                "description": "Blockchain explorer URL for the transaction"
              },
              "destinationWalletAddress": {
                "type": "string",
                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
              },
              "destinationWalletMemo": {
                "type": "string",
                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
              },
              "destinationNetwork": {
                "type": "string",
                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
              },
              "destinationCurrencySymbol": {
                "type": "string",
                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
              }
            },
            "required": [
              "type"
            ],
            "description": "CARDANO destination details",
            "anyOf": [
              {
                "required": [
                  "address"
                ],
                "properties": {
                  "address": {
                    "pattern": "\\S"
                  }
                }
              },
              {
                "required": [
                  "destinationWalletAddress"
                ],
                "properties": {
                  "destinationWalletAddress": {
                    "pattern": "\\S"
                  }
                }
              }
            ],
            "title": "CARDANO"
          },
          {
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "BSC"
                ]
              },
              "address": {
                "type": "string",
                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
              },
              "memo": {
                "type": "string",
                "description": "Memo for the wallet, when the chain uses one"
              },
              "txId": {
                "type": "string",
                "description": "Blockchain transaction ID"
              },
              "txUrlScan": {
                "type": "string",
                "description": "Blockchain explorer URL for the transaction"
              },
              "destinationWalletAddress": {
                "type": "string",
                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
              },
              "destinationWalletMemo": {
                "type": "string",
                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
              },
              "destinationNetwork": {
                "type": "string",
                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
              },
              "destinationCurrencySymbol": {
                "type": "string",
                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
              }
            },
            "required": [
              "type"
            ],
            "description": "BSC destination details",
            "anyOf": [
              {
                "required": [
                  "address"
                ],
                "properties": {
                  "address": {
                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                  }
                }
              },
              {
                "required": [
                  "destinationWalletAddress"
                ],
                "properties": {
                  "destinationWalletAddress": {
                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                  }
                }
              }
            ],
            "title": "BSC"
          },
          {
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "ARBITRUM"
                ]
              },
              "address": {
                "type": "string",
                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
              },
              "memo": {
                "type": "string",
                "description": "Memo for the wallet, when the chain uses one"
              },
              "txId": {
                "type": "string",
                "description": "Blockchain transaction ID"
              },
              "txUrlScan": {
                "type": "string",
                "description": "Blockchain explorer URL for the transaction"
              },
              "destinationWalletAddress": {
                "type": "string",
                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
              },
              "destinationWalletMemo": {
                "type": "string",
                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
              },
              "destinationNetwork": {
                "type": "string",
                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
              },
              "destinationCurrencySymbol": {
                "type": "string",
                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
              }
            },
            "required": [
              "type"
            ],
            "description": "ARBITRUM destination details",
            "anyOf": [
              {
                "required": [
                  "address"
                ],
                "properties": {
                  "address": {
                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                  }
                }
              },
              {
                "required": [
                  "destinationWalletAddress"
                ],
                "properties": {
                  "destinationWalletAddress": {
                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                  }
                }
              }
            ],
            "title": "ARBITRUM"
          },
          {
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "OPTIMISM"
                ]
              },
              "address": {
                "type": "string",
                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
              },
              "memo": {
                "type": "string",
                "description": "Memo for the wallet, when the chain uses one"
              },
              "txId": {
                "type": "string",
                "description": "Blockchain transaction ID"
              },
              "txUrlScan": {
                "type": "string",
                "description": "Blockchain explorer URL for the transaction"
              },
              "destinationWalletAddress": {
                "type": "string",
                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
              },
              "destinationWalletMemo": {
                "type": "string",
                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
              },
              "destinationNetwork": {
                "type": "string",
                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
              },
              "destinationCurrencySymbol": {
                "type": "string",
                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
              }
            },
            "required": [
              "type"
            ],
            "description": "OPTIMISM destination details",
            "anyOf": [
              {
                "required": [
                  "address"
                ],
                "properties": {
                  "address": {
                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                  }
                }
              },
              {
                "required": [
                  "destinationWalletAddress"
                ],
                "properties": {
                  "destinationWalletAddress": {
                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                  }
                }
              }
            ],
            "title": "OPTIMISM"
          },
          {
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "AVALANCHE"
                ]
              },
              "address": {
                "type": "string",
                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
              },
              "memo": {
                "type": "string",
                "description": "Memo for the wallet, when the chain uses one"
              },
              "txId": {
                "type": "string",
                "description": "Blockchain transaction ID"
              },
              "txUrlScan": {
                "type": "string",
                "description": "Blockchain explorer URL for the transaction"
              },
              "destinationWalletAddress": {
                "type": "string",
                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
              },
              "destinationWalletMemo": {
                "type": "string",
                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
              },
              "destinationNetwork": {
                "type": "string",
                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
              },
              "destinationCurrencySymbol": {
                "type": "string",
                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
              }
            },
            "required": [
              "type"
            ],
            "description": "AVALANCHE destination details",
            "anyOf": [
              {
                "required": [
                  "address"
                ],
                "properties": {
                  "address": {
                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                  }
                }
              },
              {
                "required": [
                  "destinationWalletAddress"
                ],
                "properties": {
                  "destinationWalletAddress": {
                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                  }
                }
              }
            ],
            "title": "AVALANCHE"
          },
          {
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "BASE"
                ]
              },
              "address": {
                "type": "string",
                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
              },
              "memo": {
                "type": "string",
                "description": "Memo for the wallet, when the chain uses one"
              },
              "txId": {
                "type": "string",
                "description": "Blockchain transaction ID"
              },
              "txUrlScan": {
                "type": "string",
                "description": "Blockchain explorer URL for the transaction"
              },
              "destinationWalletAddress": {
                "type": "string",
                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
              },
              "destinationWalletMemo": {
                "type": "string",
                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
              },
              "destinationNetwork": {
                "type": "string",
                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
              },
              "destinationCurrencySymbol": {
                "type": "string",
                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
              }
            },
            "required": [
              "type"
            ],
            "description": "BASE destination details",
            "anyOf": [
              {
                "required": [
                  "address"
                ],
                "properties": {
                  "address": {
                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                  }
                }
              },
              {
                "required": [
                  "destinationWalletAddress"
                ],
                "properties": {
                  "destinationWalletAddress": {
                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                  }
                }
              }
            ],
            "title": "BASE"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankAccount": {
                "type": "string",
                "description": "Bank account"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
              },
              "destinationBankName": {
                "type": "string",
                "description": "Bank name (used to resolve the network when id is omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "BANK_DEPOSIT_COL"
                ]
              },
              "destinationBankCode": {
                "type": "string",
                "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
              },
              "destinationBankAccountType": {
                "type": "string",
                "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
              },
              "destinationTaxId": {
                "type": "string",
                "description": "Recipient ID document number. Required when creating or updating a destination."
              },
              "destinationDocumentType": {
                "type": "string",
                "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccount",
              "type"
            ],
            "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
            "title": "Bank Deposit COL"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "brebKey": {
                "type": "string",
                "minLength": 1,
                "description": "Bre-B key (llave) that identifies the recipient account"
              },
              "email": {
                "type": "string",
                "description": "Recipient email (optional contact for the Bre-B rail)"
              },
              "destinationPhoneNumber": {
                "type": "string",
                "description": "Recipient phone number (optional contact for the Bre-B rail)"
              },
              "type": {
                "type": "string",
                "enum": [
                  "BRE_B_COP"
                ]
              }
            },
            "required": [
              "destinationName",
              "brebKey",
              "type"
            ],
            "description": "Colombian Bre-B payout details",
            "title": "Bre-B COP"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankCode": {
                "type": "string",
                "pattern": "^\\d{4}$",
                "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
              },
              "destinationBankAccountNumber": {
                "type": "string",
                "minLength": 1,
                "description": "Recipient bank account number"
              },
              "destinationBankAccountType": {
                "type": "string",
                "minLength": 1,
                "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
              },
              "destinationDocumentType": {
                "type": "string",
                "minLength": 1,
                "description": "Recipient ID document type (e.g. CC / CE / NIT)"
              },
              "destinationTaxId": {
                "type": "string",
                "minLength": 1,
                "description": "Recipient ID document number"
              },
              "type": {
                "type": "string",
                "enum": [
                  "ACH_COP"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationBankCode",
              "destinationBankAccountNumber",
              "destinationBankAccountType",
              "destinationDocumentType",
              "destinationTaxId",
              "type"
            ],
            "description": "Colombian ACH payout details",
            "title": "ACH COP"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankAccount": {
                "type": "string",
                "description": "Bank account"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (unused for TWD — no network discovery)"
              },
              "destinationBankName": {
                "type": "string",
                "minLength": 2,
                "description": "Bank name (required — TWD payouts run over SWIFT)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "BANK_DEPOSIT_TW"
                ]
              },
              "destinationBankBranch": {
                "type": "string",
                "minLength": 2,
                "description": "Bank branch (required — TWD payouts run over SWIFT)"
              },
              "bic": {
                "type": "string",
                "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                "description": "SWIFT BIC code (required for TWD payouts)"
              },
              "destinationBankAccountType": {
                "type": "string",
                "description": "Type of bank account (legacy, optional)"
              },
              "destinationTaxId": {
                "type": "string",
                "description": "Tax ID of the recipient (legacy, optional)"
              },
              "destinationDocumentType": {
                "type": "string",
                "description": "Document type of the recipient (legacy, optional)"
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccount",
              "destinationBankName",
              "type",
              "destinationBankBranch",
              "bic"
            ],
            "description": "Taiwan bank deposit details (SWIFT payout)",
            "title": "Bank Deposit TW"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankCode": {
                "type": "string",
                "description": "Bank code"
              },
              "destinationBankAccount": {
                "type": "string",
                "description": "Bank account"
              },
              "destinationBankBranch": {
                "type": "string",
                "description": "Bank branch"
              },
              "destinationTaxId": {
                "type": "string",
                "description": "Tax ID of the recipient"
              },
              "type": {
                "type": "string",
                "enum": [
                  "BANK_DEPOSIT_BR"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationBankCode",
              "destinationBankAccount",
              "destinationBankBranch",
              "destinationTaxId",
              "type"
            ],
            "description": "Brazilian bank deposit details",
            "title": "Bank Deposit BR"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationPixCode": {
                "type": "string",
                "description": "PIX code"
              },
              "destinationTaxId": {
                "type": "string",
                "description": "Tax ID of the recipient"
              },
              "type": {
                "type": "string",
                "enum": [
                  "PIX_BR"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationPixCode",
              "destinationTaxId",
              "type"
            ],
            "description": "Brazilian PIX details",
            "title": "PIX BR"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankAccountNumber": {
                "type": "string",
                "description": "Bank account number"
              },
              "destinationBankName": {
                "type": "string",
                "description": "Name of the bank"
              },
              "destinationTaxId": {
                "type": "string",
                "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                "description": "Tax ID of the recipient"
              },
              "destinationBankAccountType": {
                "type": "string",
                "description": "Type of bank account"
              },
              "type": {
                "type": "string",
                "enum": [
                  "BANK_DEPOSIT_VEN"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccountNumber",
              "destinationBankName",
              "destinationTaxId",
              "destinationBankAccountType",
              "type"
            ],
            "description": "Venezuelan bank deposit details",
            "title": "Bank Deposit VEN"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankCode": {
                "type": "string",
                "description": "Bank code"
              },
              "destinationPhoneNumber": {
                "type": "string",
                "description": "Phone number"
              },
              "destinationTaxId": {
                "type": "string",
                "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                "description": "Tax ID of the recipient"
              },
              "destinationBankAccountType": {
                "type": "string",
                "description": "Type of bank account"
              },
              "type": {
                "type": "string",
                "enum": [
                  "PHONE_DEPOSIT_VEN"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationBankCode",
              "destinationPhoneNumber",
              "destinationTaxId",
              "destinationBankAccountType",
              "type"
            ],
            "description": "Venezuelan phone deposit details",
            "title": "Phone Deposit VEN"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankAccount": {
                "type": "string",
                "description": "Bank account"
              },
              "destinationIFSC": {
                "type": "string",
                "description": "IFSC code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "BANK_DEPOSIT_IN"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccount",
              "type"
            ],
            "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
            "title": "Bank Deposit IN",
            "deprecated": true
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankAccount": {
                "type": "string",
                "description": "Bank account"
              },
              "destinationIFSC": {
                "type": "string",
                "description": "IFSC code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "IMPS"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccount",
              "type"
            ],
            "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
            "title": "IMPS",
            "deprecated": true
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankAccount": {
                "type": "string",
                "description": "Bank account"
              },
              "destinationIFSC": {
                "type": "string",
                "description": "IFSC code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "THAI_QR"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccount",
              "type"
            ],
            "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
            "title": "Thai QR",
            "deprecated": true
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankAccount": {
                "type": "string",
                "description": "Bank account"
              },
              "destinationIFSC": {
                "type": "string",
                "description": "IFSC code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "VIET_QR"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccount",
              "type"
            ],
            "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
            "title": "Viet QR",
            "deprecated": true
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankAccount": {
                "type": "string",
                "description": "Bank account"
              },
              "destinationIFSC": {
                "type": "string",
                "description": "IFSC code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "GCASH"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccount",
              "type"
            ],
            "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
            "title": "GCash",
            "deprecated": true
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationPhoneNumber": {
                "type": "string",
                "description": "Phone number"
              },
              "destinationTaxId": {
                "type": "string",
                "description": "Tax ID"
              },
              "type": {
                "type": "string",
                "enum": [
                  "MOBILE_PAYMENT_IN"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationPhoneNumber",
              "destinationTaxId",
              "type"
            ],
            "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
            "title": "Mobile Payment IN",
            "deprecated": true
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankAccount": {
                "type": "string",
                "description": "Bank account"
              },
              "destinationBankCode": {
                "type": "string",
                "description": "Bank code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "BANK_DEPOSIT_VN"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccount",
              "destinationBankCode",
              "type"
            ],
            "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
            "title": "Bank Deposit VN",
            "deprecated": true
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankAccount": {
                "type": "string",
                "description": "Bank account"
              },
              "bic": {
                "type": "string",
                "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
              },
              "destinationBankName": {
                "type": "string",
                "description": "Bank name"
              },
              "destinationAddress": {
                "type": "string",
                "description": "Address line 1 of the recipient"
              },
              "destinationCity": {
                "type": "string",
                "description": "Recipient city (defaults to Hong Kong)"
              },
              "accountHolderName": {
                "type": "string",
                "description": "Bank account holder name if different from payee"
              },
              "type": {
                "type": "string",
                "enum": [
                  "BANK_DEPOSIT_HK"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccount",
              "bic",
              "destinationBankName",
              "destinationAddress",
              "type"
            ],
            "description": "Hong Kong bank deposit details (HKD bank corridor)",
            "title": "Bank Deposit HK"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankAccount": {
                "type": "string",
                "description": "Bank account"
              },
              "destinationBankCode": {
                "type": "string",
                "pattern": "^\\d+$",
                "description": "CNAPS / bank institution code (numeric, variable length)"
              },
              "destinationBankName": {
                "type": "string",
                "description": "Bank name"
              },
              "destinationAddress": {
                "type": "string",
                "description": "Address line 1 of the recipient"
              },
              "destinationCity": {
                "type": "string",
                "description": "Recipient city"
              },
              "destinationState": {
                "type": "string",
                "minLength": 1,
                "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
              },
              "destinationPostcode": {
                "type": "string",
                "minLength": 1,
                "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
              },
              "destinationPhone": {
                "type": "string",
                "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
              },
              "destinationTaxId": {
                "type": "string",
                "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
              },
              "accountHolderName": {
                "type": "string",
                "description": "Bank account holder name if different from payee"
              },
              "type": {
                "type": "string",
                "enum": [
                  "BANK_DEPOSIT_CN"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccount",
              "destinationBankCode",
              "destinationBankName",
              "destinationAddress",
              "destinationCity",
              "destinationState",
              "destinationPostcode",
              "type"
            ],
            "description": "China mainland bank deposit details (CNY bank corridor)",
            "title": "Bank Deposit CN"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankAccount": {
                "type": "string",
                "description": "Bank account"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
              },
              "destinationBankName": {
                "type": "string",
                "description": "Bank name (used to resolve the network when id is omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "BANK_DEPOSIT_AR"
                ]
              },
              "destinationCBU": {
                "type": "string",
                "description": "CBU — 22-digit bank account key (legacy, optional)"
              },
              "destinationCVU": {
                "type": "string",
                "description": "CVU — 22-digit virtual account key (legacy, optional)"
              },
              "destinationAlias": {
                "type": "string",
                "description": "Account alias (legacy, optional)"
              },
              "destinationTaxId": {
                "type": "string",
                "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
              },
              "destinationDocumentType": {
                "type": "string",
                "description": "Document type of the recipient (legacy, optional)"
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccount",
              "type"
            ],
            "description": "Argentinian bank deposit details",
            "title": "Bank Deposit AR"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankAccount": {
                "type": "string",
                "description": "Bank account"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (optional if destinationBankName is given)"
              },
              "destinationBankName": {
                "type": "string",
                "minLength": 1,
                "description": "Recipient bank name (required for Chilean bank payouts)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "BANK_DEPOSIT_CL"
                ]
              },
              "destinationBankAccountType": {
                "type": "string",
                "minLength": 1,
                "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
              },
              "destinationTaxId": {
                "type": "string",
                "minLength": 1,
                "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
              },
              "destinationDocumentType": {
                "type": "string",
                "description": "Document type of the recipient (legacy, optional)"
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccount",
              "destinationBankName",
              "type",
              "destinationBankAccountType",
              "destinationTaxId"
            ],
            "description": "Chilean bank deposit details",
            "title": "Bank Deposit CL"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "minLength": 2,
                "maxLength": 30,
                "description": "Recipient name (required, 2–30 characters)"
              },
              "destinationBankAccount": {
                "type": "string",
                "minLength": 1,
                "maxLength": 11,
                "description": "Bank account number (max 11 digits for Bolivian accounts)"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (unused for BOB — no network discovery)"
              },
              "destinationBankName": {
                "type": "string",
                "maxLength": 20,
                "description": "Bank name (optional, max 20 characters)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "BANK_DEPOSIT_BO"
                ]
              },
              "destinationTaxId": {
                "type": "string",
                "minLength": 1,
                "maxLength": 15,
                "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccount",
              "type",
              "destinationTaxId"
            ],
            "description": "Bolivian bank deposit details",
            "title": "Bank Deposit BO"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankAccount": {
                "type": "string",
                "description": "Bank account"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
              },
              "destinationBankName": {
                "type": "string",
                "description": "Bank name (used to resolve the network when id is omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "BANK_DEPOSIT_PE"
                ]
              },
              "destinationCCI": {
                "type": "string",
                "description": "CCI — 20-digit interbank account code (legacy, optional)"
              },
              "destinationBankAccountType": {
                "type": "string",
                "description": "Account type (corriente/ahorro) (legacy, optional)"
              },
              "destinationTaxId": {
                "type": "string",
                "description": "DNI/RUC document ID of the recipient (legacy, optional)"
              },
              "destinationDocumentType": {
                "type": "string",
                "description": "Document type of the recipient (legacy, optional)"
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccount",
              "destinationNetworkId",
              "type"
            ],
            "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
            "title": "Bank Deposit PE",
            "deprecated": true
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankCode": {
                "type": "string",
                "pattern": "^\\d{3}$",
                "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
              },
              "destinationBankAccountNumber": {
                "type": "string",
                "minLength": 1,
                "maxLength": 20,
                "description": "Recipient bank account number (max 20)"
              },
              "destinationBankAccountType": {
                "type": "string",
                "enum": [
                  "CORRIENTE",
                  "AHORROS",
                  "PHONE"
                ],
                "description": "Bank account type"
              },
              "destinationCCI": {
                "type": "string",
                "pattern": "^\\d{1,20}$",
                "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
              },
              "destinationDocumentType": {
                "type": "string",
                "enum": [
                  "CC",
                  "CE",
                  "RUC",
                  "PAS",
                  "PAR",
                  "LMI",
                  "OTHER"
                ],
                "description": "Recipient identification type"
              },
              "destinationTaxId": {
                "type": "string",
                "minLength": 1,
                "maxLength": 50,
                "description": "Recipient identification number (max 50)"
              },
              "email": {
                "type": "string",
                "pattern": "^.+@.+\\..+$",
                "description": "Recipient email (required for PEN payouts)"
              },
              "destinationPhoneNumber": {
                "type": "string",
                "pattern": "^\\d{1,9}$",
                "description": "Recipient phone number (required, max 9 digits)"
              },
              "type": {
                "type": "string",
                "enum": [
                  "BANK_DEPOSIT_PEN"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationBankCode",
              "destinationBankAccountNumber",
              "destinationBankAccountType",
              "destinationCCI",
              "destinationDocumentType",
              "destinationTaxId",
              "email",
              "destinationPhoneNumber",
              "type"
            ],
            "description": "Peruvian bank deposit details (bank-code payout corridor).",
            "title": "Bank Deposit PEN"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankAccount": {
                "type": "string",
                "description": "Bank account"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (optional if destinationBankName is given)"
              },
              "destinationBankName": {
                "type": "string",
                "description": "Bank name (used to resolve the network when id is omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "BANK_DEPOSIT_NG"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccount",
              "type"
            ],
            "description": "Nigeria bank deposit details",
            "title": "Bank Deposit NG"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankAccount": {
                "type": "string",
                "description": "Bank account"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (optional if destinationBankName is given)"
              },
              "destinationBankName": {
                "type": "string",
                "description": "Bank name (used to resolve the network when id is omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "BANK_DEPOSIT_KE"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccount",
              "type"
            ],
            "description": "Kenya bank deposit details",
            "title": "Bank Deposit KE"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankAccount": {
                "type": "string",
                "description": "Bank account"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (optional if destinationBankName is given)"
              },
              "destinationBankName": {
                "type": "string",
                "description": "Bank name (used to resolve the network when id is omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "BANK_DEPOSIT_GH"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccount",
              "type"
            ],
            "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
            "title": "Bank Deposit GH",
            "deprecated": true
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankAccount": {
                "type": "string",
                "description": "Bank account"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (optional if destinationBankName is given)"
              },
              "destinationBankName": {
                "type": "string",
                "description": "Bank name (used to resolve the network when id is omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "BANK_DEPOSIT_ZA"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccount",
              "type"
            ],
            "description": "South Africa bank deposit details",
            "title": "Bank Deposit ZA"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankAccount": {
                "type": "string",
                "description": "Bank account"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (optional if destinationBankName is given)"
              },
              "destinationBankName": {
                "type": "string",
                "description": "Bank name (used to resolve the network when id is omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "BANK_DEPOSIT_TZ"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccount",
              "type"
            ],
            "description": "Tanzania bank deposit details",
            "title": "Bank Deposit TZ"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankAccount": {
                "type": "string",
                "description": "Bank account"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (optional if destinationBankName is given)"
              },
              "destinationBankName": {
                "type": "string",
                "description": "Bank name (used to resolve the network when id is omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "BANK_DEPOSIT_UG"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccount",
              "type"
            ],
            "description": "Uganda bank deposit details",
            "title": "Bank Deposit UG"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankAccount": {
                "type": "string",
                "description": "Bank account"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (optional if destinationBankName is given)"
              },
              "destinationBankName": {
                "type": "string",
                "description": "Bank name (used to resolve the network when id is omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "BANK_DEPOSIT_RW"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccount",
              "type"
            ],
            "description": "Rwanda bank deposit details",
            "title": "Bank Deposit RW"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankAccount": {
                "type": "string",
                "description": "Bank account"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (optional if destinationBankName is given)"
              },
              "destinationBankName": {
                "type": "string",
                "description": "Bank name (used to resolve the network when id is omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "BANK_DEPOSIT_MW"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccount",
              "type"
            ],
            "description": "Malawi bank deposit details",
            "title": "Bank Deposit MW"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankAccount": {
                "type": "string",
                "description": "Bank account"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (optional if destinationBankName is given)"
              },
              "destinationBankName": {
                "type": "string",
                "description": "Bank name (used to resolve the network when id is omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "BANK_DEPOSIT_ZM"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccount",
              "type"
            ],
            "description": "Zambia bank deposit details",
            "title": "Bank Deposit ZM"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankAccount": {
                "type": "string",
                "description": "Bank account"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (optional if destinationBankName is given)"
              },
              "destinationBankName": {
                "type": "string",
                "description": "Bank name (used to resolve the network when id is omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "BANK_DEPOSIT_BW"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccount",
              "type"
            ],
            "description": "Botswana bank deposit details",
            "title": "Bank Deposit BW"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankAccount": {
                "type": "string",
                "description": "Bank account"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (optional if destinationBankName is given)"
              },
              "destinationBankName": {
                "type": "string",
                "description": "Bank name (used to resolve the network when id is omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "BANK_DEPOSIT_CD"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccount",
              "type"
            ],
            "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
            "title": "Bank Deposit CD",
            "deprecated": true
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankAccount": {
                "type": "string",
                "description": "Bank account"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (optional if destinationBankName is given)"
              },
              "destinationBankName": {
                "type": "string",
                "description": "Bank name (used to resolve the network when id is omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "BANK_DEPOSIT_XOF"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccount",
              "type"
            ],
            "description": "West African CFA bank deposit details",
            "title": "Bank Deposit XOF"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankAccount": {
                "type": "string",
                "description": "Bank account"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (optional if destinationBankName is given)"
              },
              "destinationBankName": {
                "type": "string",
                "description": "Bank name (used to resolve the network when id is omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "BANK_DEPOSIT_XAF"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccount",
              "type"
            ],
            "description": "Central African CFA bank deposit details",
            "title": "Bank Deposit XAF"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationPhoneNumber": {
                "type": "string",
                "description": "Phone number"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (optional if destinationNetworkName is given)"
              },
              "destinationNetworkName": {
                "type": "string",
                "description": "Mobile money network name (resolves the network when id omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "MOBILE_MONEY_NG"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationPhoneNumber",
              "type"
            ],
            "description": "Nigeria mobile money details",
            "title": "Mobile Money NG"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationPhoneNumber": {
                "type": "string",
                "description": "Phone number"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (optional if destinationNetworkName is given)"
              },
              "destinationNetworkName": {
                "type": "string",
                "description": "Mobile money network name (resolves the network when id omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "MOBILE_MONEY_KE"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationPhoneNumber",
              "type"
            ],
            "description": "Kenya mobile money details",
            "title": "Mobile Money KE"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationPhoneNumber": {
                "type": "string",
                "description": "Phone number"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (optional if destinationNetworkName is given)"
              },
              "destinationNetworkName": {
                "type": "string",
                "description": "Mobile money network name (resolves the network when id omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "MOBILE_MONEY_GH"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationPhoneNumber",
              "type"
            ],
            "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
            "title": "Mobile Money GH",
            "deprecated": true
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationPhoneNumber": {
                "type": "string",
                "description": "Phone number"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (optional if destinationNetworkName is given)"
              },
              "destinationNetworkName": {
                "type": "string",
                "description": "Mobile money network name (resolves the network when id omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "MOBILE_MONEY_ZA"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationPhoneNumber",
              "type"
            ],
            "description": "South Africa mobile money details",
            "title": "Mobile Money ZA"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationPhoneNumber": {
                "type": "string",
                "description": "Phone number"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (optional if destinationNetworkName is given)"
              },
              "destinationNetworkName": {
                "type": "string",
                "description": "Mobile money network name (resolves the network when id omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "MOBILE_MONEY_TZ"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationPhoneNumber",
              "type"
            ],
            "description": "Tanzania mobile money details",
            "title": "Mobile Money TZ"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationPhoneNumber": {
                "type": "string",
                "description": "Phone number"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (optional if destinationNetworkName is given)"
              },
              "destinationNetworkName": {
                "type": "string",
                "description": "Mobile money network name (resolves the network when id omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "MOBILE_MONEY_UG"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationPhoneNumber",
              "type"
            ],
            "description": "Uganda mobile money details",
            "title": "Mobile Money UG"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationPhoneNumber": {
                "type": "string",
                "description": "Phone number"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (optional if destinationNetworkName is given)"
              },
              "destinationNetworkName": {
                "type": "string",
                "description": "Mobile money network name (resolves the network when id omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "MOBILE_MONEY_RW"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationPhoneNumber",
              "type"
            ],
            "description": "Rwanda mobile money details",
            "title": "Mobile Money RW"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationPhoneNumber": {
                "type": "string",
                "description": "Phone number"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (optional if destinationNetworkName is given)"
              },
              "destinationNetworkName": {
                "type": "string",
                "description": "Mobile money network name (resolves the network when id omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "MOBILE_MONEY_MW"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationPhoneNumber",
              "type"
            ],
            "description": "Malawi mobile money details",
            "title": "Mobile Money MW"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationPhoneNumber": {
                "type": "string",
                "description": "Phone number"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (optional if destinationNetworkName is given)"
              },
              "destinationNetworkName": {
                "type": "string",
                "description": "Mobile money network name (resolves the network when id omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "MOBILE_MONEY_ZM"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationPhoneNumber",
              "type"
            ],
            "description": "Zambia mobile money details",
            "title": "Mobile Money ZM"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationPhoneNumber": {
                "type": "string",
                "description": "Phone number"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (optional if destinationNetworkName is given)"
              },
              "destinationNetworkName": {
                "type": "string",
                "description": "Mobile money network name (resolves the network when id omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "MOBILE_MONEY_BW"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationPhoneNumber",
              "type"
            ],
            "description": "Botswana mobile money details",
            "title": "Mobile Money BW"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationPhoneNumber": {
                "type": "string",
                "description": "Phone number"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (optional if destinationNetworkName is given)"
              },
              "destinationNetworkName": {
                "type": "string",
                "description": "Mobile money network name (resolves the network when id omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "MOBILE_MONEY_CD"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationPhoneNumber",
              "type"
            ],
            "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
            "title": "Mobile Money CD",
            "deprecated": true
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationPhoneNumber": {
                "type": "string",
                "description": "Phone number"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (optional if destinationNetworkName is given)"
              },
              "destinationNetworkName": {
                "type": "string",
                "description": "Mobile money network name (resolves the network when id omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "MOBILE_MONEY_XOF"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationPhoneNumber",
              "type"
            ],
            "description": "West African CFA mobile money details",
            "title": "Mobile Money XOF"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationPhoneNumber": {
                "type": "string",
                "description": "Phone number"
              },
              "destinationNetworkId": {
                "type": "string",
                "description": "Payout network id (optional if destinationNetworkName is given)"
              },
              "destinationNetworkName": {
                "type": "string",
                "description": "Mobile money network name (resolves the network when id omitted)"
              },
              "country": {
                "type": "string",
                "description": "ISO 3166 country code"
              },
              "type": {
                "type": "string",
                "enum": [
                  "MOBILE_MONEY_XAF"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationPhoneNumber",
              "type"
            ],
            "description": "Central African CFA mobile money details",
            "title": "Mobile Money XAF"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationBankCode": {
                "type": "string",
                "description": "Bank code"
              },
              "destinationBankAccountNumber": {
                "type": "string",
                "description": "Bank account number (18-digit CLABE)"
              },
              "numericReference": {
                "type": "string",
                "description": "Numeric reference"
              },
              "notesReference": {
                "type": "string",
                "description": "Notes reference"
              },
              "destinationClabe": {
                "type": "string",
                "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
              },
              "destinationTaxId": {
                "type": "string",
                "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
              },
              "type": {
                "type": "string",
                "enum": [
                  "BANK_DEPOSIT_MX"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationBankAccountNumber",
              "type"
            ],
            "description": "Mexican bank deposit details",
            "title": "Bank Deposit MX"
          },
          {
            "type": "object",
            "properties": {
              "destinationName": {
                "type": "string",
                "description": "Name of the recipient"
              },
              "destinationPseNumber": {
                "type": "string",
                "description": "PSE number"
              },
              "type": {
                "type": "string",
                "enum": [
                  "PSE"
                ]
              }
            },
            "required": [
              "destinationName",
              "destinationPseNumber",
              "type"
            ],
            "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
            "title": "PSE",
            "deprecated": true
          }
        ],
        "description": "Union type for all possible destination details"
      },
      "CreateWithdrawalRequest": {
        "type": "object",
        "properties": {
          "amount": {
            "type": "number",
            "minimum": 0,
            "exclusiveMinimum": true,
            "description": "Amount to be withdrawn",
            "example": 1000
          },
          "currency": {
            "type": "string",
            "description": "Currency of the withdrawal",
            "example": "EUR"
          },
          "userEmail": {
            "type": "string",
            "format": "email",
            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
            "description": "Email of the user making the request",
            "example": "user@example.com"
          },
          "destinationTranferId": {
            "type": "string",
            "description": "ID of the destination transfer method",
            "example": "123"
          },
          "destinationTransferData": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "BALANCE"
                    ]
                  }
                },
                "required": [
                  "type"
                ],
                "description": "Balance transfer details",
                "title": "Balance"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "iban": {
                    "type": "string",
                    "description": "IBAN number"
                  },
                  "bic": {
                    "type": "string",
                    "description": "BIC number (optional)"
                  },
                  "country": {
                    "type": "string",
                    "description": "Country code"
                  },
                  "accountType": {
                    "type": "string",
                    "enum": [
                      "PERSONAL",
                      "BUSINESS"
                    ],
                    "default": "PERSONAL",
                    "description": "Account type (optional)"
                  },
                  "city": {
                    "type": "string",
                    "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                  },
                  "postalCode": {
                    "type": "string",
                    "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                  },
                  "address": {
                    "type": "string",
                    "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "SEPA"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "iban",
                  "country",
                  "type"
                ],
                "description": "SEPA transfer details",
                "title": "SEPA"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "UK bank account number"
                  },
                  "sortCode": {
                    "type": "string",
                    "description": "UK sort code"
                  },
                  "country": {
                    "type": "string",
                    "enum": [
                      "GB"
                    ],
                    "default": "GB",
                    "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                  },
                  "accountType": {
                    "type": "string",
                    "enum": [
                      "PERSONAL",
                      "BUSINESS"
                    ],
                    "default": "PERSONAL",
                    "description": "Account type (optional)"
                  },
                  "city": {
                    "type": "string",
                    "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                  },
                  "postalCode": {
                    "type": "string",
                    "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                  },
                  "address": {
                    "type": "string",
                    "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "GBP_BANK_TRANSFER"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "accountNumber",
                  "sortCode",
                  "type"
                ],
                "description": "GBP domestic bank transfer details",
                "title": "BankDepositGB"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "US bank account number"
                  },
                  "routingNumber": {
                    "type": "string",
                    "description": "US ABA routing number"
                  },
                  "country": {
                    "type": "string",
                    "enum": [
                      "US"
                    ],
                    "default": "US",
                    "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                  },
                  "accountType": {
                    "type": "string",
                    "enum": [
                      "PERSONAL",
                      "BUSINESS"
                    ],
                    "default": "PERSONAL",
                    "description": "Account type (optional)"
                  },
                  "bankAccountType": {
                    "type": "string",
                    "enum": [
                      "CHECKING",
                      "SAVINGS"
                    ],
                    "default": "CHECKING",
                    "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                  },
                  "city": {
                    "type": "string",
                    "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                  },
                  "postalCode": {
                    "type": "string",
                    "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                  },
                  "state": {
                    "type": "string",
                    "pattern": "^[A-Z]{2}$",
                    "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                  },
                  "address": {
                    "type": "string",
                    "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "ACH_US"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "accountNumber",
                  "routingNumber",
                  "state",
                  "type"
                ],
                "description": "USD ACH transfer details",
                "title": "AchUS"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "linkedBankAccount"
                    ]
                  },
                  "accountLinkId": {
                    "type": "string",
                    "pattern": "^alnk_[0-9a-f]{24}$",
                    "description": "Identifier of one of the account holder own linked bank accounts",
                    "examples": [
                      "alnk_0123456789abcdef01234567"
                    ]
                  }
                },
                "required": [
                  "type",
                  "accountLinkId"
                ],
                "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                "title": "LinkedBankAccount",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "ETH"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "ETH destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "ETH"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "MATIC"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "MATIC destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "MATIC"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "SOL"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "SOL destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "SOL"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "TRON"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "TRON destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "TRON"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "CELO"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "CELO destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "CELO"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "BTC"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "BTC destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "BTC"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "SOLANA"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "SOLANA destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "SOLANA"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "XRP"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "XRP destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "XRP"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "CARDANO"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "CARDANO destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "CARDANO"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "BSC"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "BSC destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "BSC"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "ARBITRUM"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "ARBITRUM destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "ARBITRUM"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "OPTIMISM"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "OPTIMISM destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "OPTIMISM"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "AVALANCHE"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "AVALANCHE destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "AVALANCHE"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "BASE"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "BASE destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "BASE"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_COL"
                    ]
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name)."
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Bank account type — CORRIENTE or AHORRO."
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Recipient ID document number."
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Recipient ID document type — CC, CE, NIT, TI or PP."
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type",
                  "destinationBankCode",
                  "destinationBankAccountType",
                  "destinationDocumentType",
                  "destinationTaxId"
                ],
                "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                "title": "Bank Deposit COL"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "brebKey": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Bre-B key (llave) that identifies the recipient account"
                  },
                  "email": {
                    "type": "string",
                    "description": "Recipient email (optional contact for the Bre-B rail)"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Recipient phone number (optional contact for the Bre-B rail)"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BRE_B_COP"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "brebKey",
                  "type"
                ],
                "description": "Colombian Bre-B payout details",
                "title": "Bre-B COP"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "pattern": "^\\d{4}$",
                    "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                  },
                  "destinationBankAccountNumber": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Recipient bank account number"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Recipient ID document number"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "ACH_COP"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankCode",
                  "destinationBankAccountNumber",
                  "destinationBankAccountType",
                  "destinationDocumentType",
                  "destinationTaxId",
                  "type"
                ],
                "description": "Colombian ACH payout details",
                "title": "ACH COP"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (unused for TWD — no network discovery)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "minLength": 2,
                    "description": "Bank name (required — TWD payouts run over SWIFT)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_TW"
                    ]
                  },
                  "destinationBankBranch": {
                    "type": "string",
                    "minLength": 2,
                    "description": "Bank branch (required — TWD payouts run over SWIFT)"
                  },
                  "bic": {
                    "type": "string",
                    "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                    "description": "SWIFT BIC code (required for TWD payouts)"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Type of bank account (legacy, optional)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Tax ID of the recipient (legacy, optional)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Document type of the recipient (legacy, optional)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationBankName",
                  "type",
                  "destinationBankBranch",
                  "bic"
                ],
                "description": "Taiwan bank deposit details (SWIFT payout)",
                "title": "Bank Deposit TW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Bank code"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationBankBranch": {
                    "type": "string",
                    "description": "Bank branch"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Tax ID of the recipient"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_BR"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankCode",
                  "destinationBankAccount",
                  "destinationBankBranch",
                  "destinationTaxId",
                  "type"
                ],
                "description": "Brazilian bank deposit details",
                "title": "Bank Deposit BR"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPixCode": {
                    "type": "string",
                    "description": "PIX code"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Tax ID of the recipient"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "PIX_BR"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPixCode",
                  "destinationTaxId",
                  "type"
                ],
                "description": "Brazilian PIX details",
                "title": "PIX BR"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccountNumber": {
                    "type": "string",
                    "description": "Bank account number"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Name of the bank"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                    "description": "Tax ID of the recipient"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Type of bank account"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_VEN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccountNumber",
                  "destinationBankName",
                  "destinationTaxId",
                  "destinationBankAccountType",
                  "type"
                ],
                "description": "Venezuelan bank deposit details",
                "title": "Bank Deposit VEN"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Bank code"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                    "description": "Tax ID of the recipient"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Type of bank account"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "PHONE_DEPOSIT_VEN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankCode",
                  "destinationPhoneNumber",
                  "destinationTaxId",
                  "destinationBankAccountType",
                  "type"
                ],
                "description": "Venezuelan phone deposit details",
                "title": "Phone Deposit VEN"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_IN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit IN",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "IMPS"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "IMPS",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "THAI_QR"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Thai QR",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "VIET_QR"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Viet QR",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "GCASH"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "GCash",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Tax ID"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_PAYMENT_IN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "destinationTaxId",
                  "type"
                ],
                "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Mobile Payment IN",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Bank code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_VN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationBankCode",
                  "type"
                ],
                "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit VN",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "bic": {
                    "type": "string",
                    "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "destinationAddress": {
                    "type": "string",
                    "description": "Address line 1 of the recipient"
                  },
                  "destinationCity": {
                    "type": "string",
                    "description": "Recipient city (defaults to Hong Kong)"
                  },
                  "accountHolderName": {
                    "type": "string",
                    "description": "Bank account holder name if different from payee"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_HK"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "bic",
                  "destinationBankName",
                  "destinationAddress",
                  "type"
                ],
                "description": "Hong Kong bank deposit details (HKD bank corridor)",
                "title": "Bank Deposit HK"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "pattern": "^\\d+$",
                    "description": "CNAPS / bank institution code (numeric, variable length)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "destinationAddress": {
                    "type": "string",
                    "description": "Address line 1 of the recipient"
                  },
                  "destinationCity": {
                    "type": "string",
                    "description": "Recipient city"
                  },
                  "destinationState": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                  },
                  "destinationPostcode": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                  },
                  "destinationPhone": {
                    "type": "string",
                    "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                  },
                  "accountHolderName": {
                    "type": "string",
                    "description": "Bank account holder name if different from payee"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_CN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationBankCode",
                  "destinationBankName",
                  "destinationAddress",
                  "destinationCity",
                  "destinationState",
                  "destinationPostcode",
                  "type"
                ],
                "description": "China mainland bank deposit details (CNY bank corridor)",
                "title": "Bank Deposit CN"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_AR"
                    ]
                  },
                  "destinationCBU": {
                    "type": "string",
                    "description": "CBU — 22-digit bank account key (legacy, optional)"
                  },
                  "destinationCVU": {
                    "type": "string",
                    "description": "CVU — 22-digit virtual account key (legacy, optional)"
                  },
                  "destinationAlias": {
                    "type": "string",
                    "description": "Account alias (legacy, optional)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Document type of the recipient (legacy, optional)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type",
                  "destinationTaxId"
                ],
                "description": "Argentinian bank deposit details",
                "title": "Bank Deposit AR"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Recipient bank name (required for Chilean bank payouts)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_CL"
                    ]
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "minLength": 1,
                    "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Document type of the recipient (legacy, optional)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationBankName",
                  "type",
                  "destinationBankAccountType",
                  "destinationTaxId"
                ],
                "description": "Chilean bank deposit details",
                "title": "Bank Deposit CL"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "minLength": 2,
                    "maxLength": 30,
                    "description": "Recipient name (required, 2–30 characters)"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 11,
                    "description": "Bank account number (max 11 digits for Bolivian accounts)"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (unused for BOB — no network discovery)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "maxLength": 20,
                    "description": "Bank name (optional, max 20 characters)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_BO"
                    ]
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 15,
                    "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type",
                  "destinationTaxId"
                ],
                "description": "Bolivian bank deposit details",
                "title": "Bank Deposit BO"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_PE"
                    ]
                  },
                  "destinationCCI": {
                    "type": "string",
                    "description": "CCI — 20-digit interbank account code (legacy, optional)"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Account type (corriente/ahorro) (legacy, optional)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Document type of the recipient (legacy, optional)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationNetworkId",
                  "type"
                ],
                "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit PE",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "pattern": "^\\d{3}$",
                    "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                  },
                  "destinationBankAccountNumber": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 20,
                    "description": "Recipient bank account number (max 20)"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "enum": [
                      "CORRIENTE",
                      "AHORROS",
                      "PHONE"
                    ],
                    "description": "Bank account type"
                  },
                  "destinationCCI": {
                    "type": "string",
                    "pattern": "^\\d{1,20}$",
                    "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "enum": [
                      "CC",
                      "CE",
                      "RUC",
                      "PAS",
                      "PAR",
                      "LMI",
                      "OTHER"
                    ],
                    "description": "Recipient identification type"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 50,
                    "description": "Recipient identification number (max 50)"
                  },
                  "email": {
                    "type": "string",
                    "pattern": "^.+@.+\\..+$",
                    "description": "Recipient email (required for PEN payouts)"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "pattern": "^\\d{1,9}$",
                    "description": "Recipient phone number (required, max 9 digits)"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_PEN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankCode",
                  "destinationBankAccountNumber",
                  "destinationBankAccountType",
                  "destinationCCI",
                  "destinationDocumentType",
                  "destinationTaxId",
                  "email",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Peruvian bank deposit details (bank-code payout corridor).",
                "title": "Bank Deposit PEN"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_NG"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Nigeria bank deposit details",
                "title": "Bank Deposit NG"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_KE"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Kenya bank deposit details",
                "title": "Bank Deposit KE"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_GH"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit GH",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_ZA"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "South Africa bank deposit details",
                "title": "Bank Deposit ZA"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_TZ"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Tanzania bank deposit details",
                "title": "Bank Deposit TZ"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_UG"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Uganda bank deposit details",
                "title": "Bank Deposit UG"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_RW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Rwanda bank deposit details",
                "title": "Bank Deposit RW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_MW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Malawi bank deposit details",
                "title": "Bank Deposit MW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_ZM"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Zambia bank deposit details",
                "title": "Bank Deposit ZM"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_BW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Botswana bank deposit details",
                "title": "Bank Deposit BW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_CD"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit CD",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_XOF"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "West African CFA bank deposit details",
                "title": "Bank Deposit XOF"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_XAF"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Central African CFA bank deposit details",
                "title": "Bank Deposit XAF"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_NG"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Nigeria mobile money details",
                "title": "Mobile Money NG"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_KE"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Kenya mobile money details",
                "title": "Mobile Money KE"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_GH"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Mobile Money GH",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_ZA"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "South Africa mobile money details",
                "title": "Mobile Money ZA"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_TZ"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Tanzania mobile money details",
                "title": "Mobile Money TZ"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_UG"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Uganda mobile money details",
                "title": "Mobile Money UG"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_RW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Rwanda mobile money details",
                "title": "Mobile Money RW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_MW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Malawi mobile money details",
                "title": "Mobile Money MW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_ZM"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Zambia mobile money details",
                "title": "Mobile Money ZM"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_BW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Botswana mobile money details",
                "title": "Mobile Money BW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_CD"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Mobile Money CD",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_XOF"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "West African CFA mobile money details",
                "title": "Mobile Money XOF"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_XAF"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Central African CFA mobile money details",
                "title": "Mobile Money XAF"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Bank code"
                  },
                  "destinationBankAccountNumber": {
                    "type": "string",
                    "description": "Bank account number (18-digit CLABE)"
                  },
                  "numericReference": {
                    "type": "string",
                    "description": "Numeric reference"
                  },
                  "notesReference": {
                    "type": "string",
                    "description": "Notes reference"
                  },
                  "destinationClabe": {
                    "type": "string",
                    "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_MX"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccountNumber",
                  "type"
                ],
                "description": "Mexican bank deposit details",
                "title": "Bank Deposit MX"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPseNumber": {
                    "type": "string",
                    "description": "PSE number"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "PSE"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPseNumber",
                  "type"
                ],
                "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "PSE",
                "deprecated": true
              }
            ],
            "description": "Payout destination details. The `type` field selects the rail. Representative values: `SEPA` (EUR bank, requires IBAN), `PIX_BR` (Brazilian PIX instant), `BANK_DEPOSIT_VEN` (Venezuelan bank transfer — account number, bank code, tax ID), `PHONE_DEPOSIT_VEN` (Venezuelan phone-based payout — phone number, bank code, tax ID), `MATIC` / `ETH` / `TRON` (crypto wallet with `address` field). Use GET /v1/currencies to discover available rails and their required fields. Either this field or `destinationTranferId` must be provided.",
            "title": "WithdrawalInfo",
            "example": {
              "type": "SEPA",
              "destinationName": "John Doe",
              "iban": "ES9121000418450200051332",
              "bic": "CAIXESBBXXX",
              "country": "ES",
              "address": "Calle Mayor 1"
            }
          },
          "beneficiary": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "minLength": 1,
                "maxLength": 140
              },
              "surname": {
                "type": "string",
                "minLength": 1,
                "maxLength": 140
              },
              "relationship": {
                "type": "string",
                "enum": [
                  "third_party"
                ]
              }
            },
            "required": [
              "name",
              "surname",
              "relationship"
            ],
            "additionalProperties": false,
            "description": "Declare the destination owner when the payout is NOT to the holder’s own wallet. Omit for own-wallet payouts."
          }
        },
        "required": [
          "amount",
          "currency",
          "userEmail"
        ],
        "description": "Request schema for creating a withdrawal"
      },
      "CreateWithdrawalResponse": {
        "type": "object",
        "properties": {
          "withdrawalId": {
            "anyOf": [
              {
                "type": "string",
                "minLength": 12,
                "maxLength": 12,
                "pattern": "^[A-Z0-9]{12}$",
                "examples": [
                  "01CLFXMT67II",
                  "2R7E5Y5KFXP8",
                  "4FWWRE3Y2URM"
                ]
              },
              {
                "type": "string",
                "format": "uuid"
              }
            ],
            "description": "ID of the withdrawal"
          },
          "userData": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "userType": {
                    "type": "string",
                    "enum": [
                      "individual"
                    ]
                  },
                  "firstName": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 50,
                    "description": "First name of the user making the deposit (or representative for business)",
                    "examples": [
                      "John",
                      "Alice",
                      "Bob"
                    ]
                  },
                  "lastName": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "Last name of the user making the deposit (or representative for business)",
                    "examples": [
                      "Doe",
                      "Smith",
                      "Johnson"
                    ]
                  },
                  "userEmail": {
                    "type": "string",
                    "maxLength": 254,
                    "format": "email",
                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                    "description": "Email of the user making the deposit",
                    "examples": [
                      "user@virtuabroker.com",
                      "john.doe@example.com",
                      "alice@example.com"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "maxLength": 150,
                    "description": "Address of the user making the deposit",
                    "examples": [
                      "123 Main St, Anytown, ES",
                      "456 Elm St, Anytown, ES",
                      "789 Oak St, Anytown, ES"
                    ]
                  },
                  "taxDocumentType": {
                    "type": "string",
                    "maxLength": 50,
                    "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                    "examples": [
                      "CC",
                      "NIT",
                      "CE",
                      "NIF",
                      "Other"
                    ]
                  },
                  "taxId": {
                    "type": "string",
                    "maxLength": 30,
                    "description": "Tax ID of the user making the deposit",
                    "examples": [
                      "123-45-6789",
                      "987-65-4321",
                      "111-22-3333"
                    ]
                  },
                  "country": {
                    "type": "string",
                    "enum": [
                      "US",
                      "CA",
                      "GB",
                      "DE",
                      "FR",
                      "AU",
                      "JP",
                      "KR",
                      "SE",
                      "NO",
                      "DK",
                      "FI",
                      "NL",
                      "BE",
                      "CH",
                      "AT",
                      "NZ",
                      "SG",
                      "IE",
                      "LU",
                      "PT",
                      "ES",
                      "IT",
                      "GR",
                      "CZ",
                      "PL",
                      "HU",
                      "SK",
                      "SI",
                      "EE",
                      "LT",
                      "LV",
                      "IS",
                      "MT",
                      "CY",
                      "HR",
                      "RO",
                      "BG",
                      "BR",
                      "AR",
                      "CL",
                      "MX",
                      "CO",
                      "PE",
                      "PA",
                      "UY",
                      "BO",
                      "ZA",
                      "NG",
                      "KE",
                      "GH",
                      "TZ",
                      "UG",
                      "RW",
                      "MW",
                      "ZM",
                      "BW",
                      "CD",
                      "CI",
                      "CM",
                      "IL",
                      "AE",
                      "QA",
                      "SA",
                      "OM",
                      "KW",
                      "BH",
                      "MY",
                      "PH",
                      "TH",
                      "VN",
                      "ID",
                      "IN",
                      "LK",
                      "NP",
                      "BD",
                      "PK",
                      "EG",
                      "MA",
                      "DZ",
                      "TN",
                      "JO",
                      "LB",
                      "TR",
                      "KH",
                      "MM",
                      "LA",
                      "EN",
                      "BT",
                      "VE",
                      "TW",
                      "HK",
                      "CN"
                    ],
                    "description": "Country code of the user making the deposit",
                    "examples": [
                      "ES",
                      "US",
                      "GB"
                    ]
                  },
                  "state": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "State of the user making the deposit",
                    "examples": [
                      "Madrid",
                      "New York",
                      "London"
                    ]
                  },
                  "postalCode": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 30,
                    "description": "Postal code of the user making the deposit",
                    "examples": [
                      "12345",
                      "67890",
                      "abcde"
                    ]
                  },
                  "city": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "City of the user making the deposit",
                    "examples": [
                      "Madrid",
                      "New York",
                      "London"
                    ]
                  },
                  "dob": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 30,
                    "description": "Date of birth of the user making the deposit",
                    "examples": [
                      "1990-01-01",
                      "1995-05-15",
                      "1988-12-31"
                    ]
                  },
                  "phoneNumber": {
                    "type": "string",
                    "maxLength": 30,
                    "description": "Phone number of the user making the deposit",
                    "examples": [
                      "+447700900123",
                      "+447700900456",
                      "+447700900789"
                    ]
                  },
                  "kycId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 300,
                    "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                    "examples": [
                      "kyc-12345",
                      "kyc-67890",
                      "kyc-abcde"
                    ]
                  },
                  "activity": {
                    "type": "string",
                    "description": "Activity of the user making the deposit",
                    "examples": [
                      "worker",
                      "business",
                      "student"
                    ]
                  }
                },
                "required": [
                  "userType",
                  "firstName",
                  "userEmail",
                  "country"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "userType": {
                    "type": "string",
                    "enum": [
                      "business"
                    ]
                  },
                  "businessName": {
                    "type": "string",
                    "maxLength": 150,
                    "description": "Business name (required when userType is business)",
                    "examples": [
                      "Acme Corp",
                      "Tech Solutions Inc",
                      "Global Services Ltd"
                    ]
                  },
                  "firstName": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 50,
                    "description": "First name of the user making the deposit (or representative for business)",
                    "examples": [
                      "John",
                      "Alice",
                      "Bob"
                    ]
                  },
                  "userEmail": {
                    "type": "string",
                    "maxLength": 254,
                    "format": "email",
                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                    "description": "Email of the user making the deposit",
                    "examples": [
                      "user@virtuabroker.com",
                      "john.doe@example.com",
                      "alice@example.com"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "maxLength": 150,
                    "description": "Address of the user making the deposit",
                    "examples": [
                      "123 Main St, Anytown, ES",
                      "456 Elm St, Anytown, ES",
                      "789 Oak St, Anytown, ES"
                    ]
                  },
                  "taxDocumentType": {
                    "type": "string",
                    "maxLength": 50,
                    "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                    "examples": [
                      "CC",
                      "NIT",
                      "CE",
                      "NIF",
                      "Other"
                    ]
                  },
                  "taxId": {
                    "type": "string",
                    "maxLength": 30,
                    "description": "Tax ID of the user making the deposit",
                    "examples": [
                      "123-45-6789",
                      "987-65-4321",
                      "111-22-3333"
                    ]
                  },
                  "country": {
                    "type": "string",
                    "enum": [
                      "US",
                      "CA",
                      "GB",
                      "DE",
                      "FR",
                      "AU",
                      "JP",
                      "KR",
                      "SE",
                      "NO",
                      "DK",
                      "FI",
                      "NL",
                      "BE",
                      "CH",
                      "AT",
                      "NZ",
                      "SG",
                      "IE",
                      "LU",
                      "PT",
                      "ES",
                      "IT",
                      "GR",
                      "CZ",
                      "PL",
                      "HU",
                      "SK",
                      "SI",
                      "EE",
                      "LT",
                      "LV",
                      "IS",
                      "MT",
                      "CY",
                      "HR",
                      "RO",
                      "BG",
                      "BR",
                      "AR",
                      "CL",
                      "MX",
                      "CO",
                      "PE",
                      "PA",
                      "UY",
                      "BO",
                      "ZA",
                      "NG",
                      "KE",
                      "GH",
                      "TZ",
                      "UG",
                      "RW",
                      "MW",
                      "ZM",
                      "BW",
                      "CD",
                      "CI",
                      "CM",
                      "IL",
                      "AE",
                      "QA",
                      "SA",
                      "OM",
                      "KW",
                      "BH",
                      "MY",
                      "PH",
                      "TH",
                      "VN",
                      "ID",
                      "IN",
                      "LK",
                      "NP",
                      "BD",
                      "PK",
                      "EG",
                      "MA",
                      "DZ",
                      "TN",
                      "JO",
                      "LB",
                      "TR",
                      "KH",
                      "MM",
                      "LA",
                      "EN",
                      "BT",
                      "VE",
                      "TW",
                      "HK",
                      "CN"
                    ],
                    "description": "Country code of the user making the deposit",
                    "examples": [
                      "ES",
                      "US",
                      "GB"
                    ]
                  },
                  "state": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "State of the user making the deposit",
                    "examples": [
                      "Madrid",
                      "New York",
                      "London"
                    ]
                  },
                  "postalCode": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 30,
                    "description": "Postal code of the user making the deposit",
                    "examples": [
                      "12345",
                      "67890",
                      "abcde"
                    ]
                  },
                  "city": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "City of the user making the deposit",
                    "examples": [
                      "Madrid",
                      "New York",
                      "London"
                    ]
                  },
                  "dob": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 30,
                    "description": "Date of birth of the user making the deposit",
                    "examples": [
                      "1990-01-01",
                      "1995-05-15",
                      "1988-12-31"
                    ]
                  },
                  "phoneNumber": {
                    "type": "string",
                    "maxLength": 30,
                    "description": "Phone number of the user making the deposit",
                    "examples": [
                      "+447700900123",
                      "+447700900456",
                      "+447700900789"
                    ]
                  },
                  "kycId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 300,
                    "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                    "examples": [
                      "kyc-12345",
                      "kyc-67890",
                      "kyc-abcde"
                    ]
                  },
                  "activity": {
                    "type": "string",
                    "description": "Activity of the user making the deposit",
                    "examples": [
                      "worker",
                      "business",
                      "student"
                    ]
                  }
                },
                "required": [
                  "userType",
                  "businessName",
                  "firstName",
                  "userEmail",
                  "country"
                ]
              }
            ],
            "description": "User data for the withdrawal"
          },
          "createdAt": {
            "type": "number",
            "description": "Creation time of the withdrawal",
            "example": 1723027132
          },
          "updatedAt": {
            "type": "number",
            "description": "Last update time of the withdrawal",
            "example": 1723027132
          },
          "userEmail": {
            "type": "string",
            "format": "email",
            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
            "description": "Email of the user making the request",
            "example": "user@example.com"
          },
          "amount": {
            "type": "number",
            "description": "Amount to be withdrawn. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
            "example": 1000
          },
          "currency": {
            "type": "string",
            "description": "Currency of the withdrawal",
            "example": "EUR"
          },
          "fee": {
            "type": "number",
            "description": "Fee for the withdrawal. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
            "example": 10
          },
          "feeCurrency": {
            "type": "string",
            "description": "Currency of the fee",
            "example": "EUR"
          },
          "destinationTransferData": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "BALANCE"
                    ]
                  }
                },
                "required": [
                  "type"
                ],
                "description": "Balance transfer details",
                "title": "Balance"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "iban": {
                    "type": "string",
                    "description": "IBAN number"
                  },
                  "bic": {
                    "type": "string",
                    "description": "BIC number (optional)"
                  },
                  "country": {
                    "type": "string",
                    "description": "Country code"
                  },
                  "accountType": {
                    "type": "string",
                    "enum": [
                      "PERSONAL",
                      "BUSINESS"
                    ],
                    "default": "PERSONAL",
                    "description": "Account type (optional)"
                  },
                  "city": {
                    "type": "string",
                    "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                  },
                  "postalCode": {
                    "type": "string",
                    "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                  },
                  "address": {
                    "type": "string",
                    "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "SEPA"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "iban",
                  "country",
                  "type"
                ],
                "description": "SEPA transfer details",
                "title": "SEPA"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "UK bank account number"
                  },
                  "sortCode": {
                    "type": "string",
                    "description": "UK sort code"
                  },
                  "country": {
                    "type": "string",
                    "enum": [
                      "GB"
                    ],
                    "default": "GB",
                    "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                  },
                  "accountType": {
                    "type": "string",
                    "enum": [
                      "PERSONAL",
                      "BUSINESS"
                    ],
                    "default": "PERSONAL",
                    "description": "Account type (optional)"
                  },
                  "city": {
                    "type": "string",
                    "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                  },
                  "postalCode": {
                    "type": "string",
                    "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                  },
                  "address": {
                    "type": "string",
                    "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "GBP_BANK_TRANSFER"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "accountNumber",
                  "sortCode",
                  "type"
                ],
                "description": "GBP domestic bank transfer details",
                "title": "BankDepositGB"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "US bank account number"
                  },
                  "routingNumber": {
                    "type": "string",
                    "description": "US ABA routing number"
                  },
                  "country": {
                    "type": "string",
                    "enum": [
                      "US"
                    ],
                    "default": "US",
                    "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                  },
                  "accountType": {
                    "type": "string",
                    "enum": [
                      "PERSONAL",
                      "BUSINESS"
                    ],
                    "default": "PERSONAL",
                    "description": "Account type (optional)"
                  },
                  "bankAccountType": {
                    "type": "string",
                    "enum": [
                      "CHECKING",
                      "SAVINGS"
                    ],
                    "default": "CHECKING",
                    "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                  },
                  "city": {
                    "type": "string",
                    "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                  },
                  "postalCode": {
                    "type": "string",
                    "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                  },
                  "state": {
                    "type": "string",
                    "pattern": "^[A-Z]{2}$",
                    "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                  },
                  "address": {
                    "type": "string",
                    "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "ACH_US"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "accountNumber",
                  "routingNumber",
                  "state",
                  "type"
                ],
                "description": "USD ACH transfer details",
                "title": "AchUS"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "linkedBankAccount"
                    ]
                  },
                  "accountLinkId": {
                    "type": "string",
                    "pattern": "^alnk_[0-9a-f]{24}$",
                    "description": "Identifier of one of the account holder own linked bank accounts",
                    "examples": [
                      "alnk_0123456789abcdef01234567"
                    ]
                  }
                },
                "required": [
                  "type",
                  "accountLinkId"
                ],
                "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                "title": "LinkedBankAccount",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "ETH"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "ETH destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "ETH"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "MATIC"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "MATIC destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "MATIC"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "SOL"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "SOL destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "SOL"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "TRON"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "TRON destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "TRON"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "CELO"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "CELO destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "CELO"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "BTC"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "BTC destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "BTC"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "SOLANA"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "SOLANA destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "SOLANA"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "XRP"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "XRP destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "XRP"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "CARDANO"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "CARDANO destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "CARDANO"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "BSC"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "BSC destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "BSC"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "ARBITRUM"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "ARBITRUM destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "ARBITRUM"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "OPTIMISM"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "OPTIMISM destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "OPTIMISM"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "AVALANCHE"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "AVALANCHE destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "AVALANCHE"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "BASE"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "BASE destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "BASE"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_COL"
                    ]
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Recipient ID document number. Required when creating or updating a destination."
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                "title": "Bank Deposit COL"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "brebKey": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Bre-B key (llave) that identifies the recipient account"
                  },
                  "email": {
                    "type": "string",
                    "description": "Recipient email (optional contact for the Bre-B rail)"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Recipient phone number (optional contact for the Bre-B rail)"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BRE_B_COP"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "brebKey",
                  "type"
                ],
                "description": "Colombian Bre-B payout details",
                "title": "Bre-B COP"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "pattern": "^\\d{4}$",
                    "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                  },
                  "destinationBankAccountNumber": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Recipient bank account number"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Recipient ID document number"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "ACH_COP"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankCode",
                  "destinationBankAccountNumber",
                  "destinationBankAccountType",
                  "destinationDocumentType",
                  "destinationTaxId",
                  "type"
                ],
                "description": "Colombian ACH payout details",
                "title": "ACH COP"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (unused for TWD — no network discovery)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "minLength": 2,
                    "description": "Bank name (required — TWD payouts run over SWIFT)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_TW"
                    ]
                  },
                  "destinationBankBranch": {
                    "type": "string",
                    "minLength": 2,
                    "description": "Bank branch (required — TWD payouts run over SWIFT)"
                  },
                  "bic": {
                    "type": "string",
                    "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                    "description": "SWIFT BIC code (required for TWD payouts)"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Type of bank account (legacy, optional)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Tax ID of the recipient (legacy, optional)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Document type of the recipient (legacy, optional)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationBankName",
                  "type",
                  "destinationBankBranch",
                  "bic"
                ],
                "description": "Taiwan bank deposit details (SWIFT payout)",
                "title": "Bank Deposit TW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Bank code"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationBankBranch": {
                    "type": "string",
                    "description": "Bank branch"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Tax ID of the recipient"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_BR"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankCode",
                  "destinationBankAccount",
                  "destinationBankBranch",
                  "destinationTaxId",
                  "type"
                ],
                "description": "Brazilian bank deposit details",
                "title": "Bank Deposit BR"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPixCode": {
                    "type": "string",
                    "description": "PIX code"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Tax ID of the recipient"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "PIX_BR"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPixCode",
                  "destinationTaxId",
                  "type"
                ],
                "description": "Brazilian PIX details",
                "title": "PIX BR"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccountNumber": {
                    "type": "string",
                    "description": "Bank account number"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Name of the bank"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                    "description": "Tax ID of the recipient"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Type of bank account"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_VEN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccountNumber",
                  "destinationBankName",
                  "destinationTaxId",
                  "destinationBankAccountType",
                  "type"
                ],
                "description": "Venezuelan bank deposit details",
                "title": "Bank Deposit VEN"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Bank code"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                    "description": "Tax ID of the recipient"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Type of bank account"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "PHONE_DEPOSIT_VEN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankCode",
                  "destinationPhoneNumber",
                  "destinationTaxId",
                  "destinationBankAccountType",
                  "type"
                ],
                "description": "Venezuelan phone deposit details",
                "title": "Phone Deposit VEN"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_IN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit IN",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "IMPS"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "IMPS",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "THAI_QR"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Thai QR",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "VIET_QR"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Viet QR",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "GCASH"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "GCash",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Tax ID"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_PAYMENT_IN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "destinationTaxId",
                  "type"
                ],
                "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Mobile Payment IN",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Bank code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_VN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationBankCode",
                  "type"
                ],
                "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit VN",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "bic": {
                    "type": "string",
                    "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "destinationAddress": {
                    "type": "string",
                    "description": "Address line 1 of the recipient"
                  },
                  "destinationCity": {
                    "type": "string",
                    "description": "Recipient city (defaults to Hong Kong)"
                  },
                  "accountHolderName": {
                    "type": "string",
                    "description": "Bank account holder name if different from payee"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_HK"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "bic",
                  "destinationBankName",
                  "destinationAddress",
                  "type"
                ],
                "description": "Hong Kong bank deposit details (HKD bank corridor)",
                "title": "Bank Deposit HK"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "pattern": "^\\d+$",
                    "description": "CNAPS / bank institution code (numeric, variable length)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "destinationAddress": {
                    "type": "string",
                    "description": "Address line 1 of the recipient"
                  },
                  "destinationCity": {
                    "type": "string",
                    "description": "Recipient city"
                  },
                  "destinationState": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                  },
                  "destinationPostcode": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                  },
                  "destinationPhone": {
                    "type": "string",
                    "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                  },
                  "accountHolderName": {
                    "type": "string",
                    "description": "Bank account holder name if different from payee"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_CN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationBankCode",
                  "destinationBankName",
                  "destinationAddress",
                  "destinationCity",
                  "destinationState",
                  "destinationPostcode",
                  "type"
                ],
                "description": "China mainland bank deposit details (CNY bank corridor)",
                "title": "Bank Deposit CN"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_AR"
                    ]
                  },
                  "destinationCBU": {
                    "type": "string",
                    "description": "CBU — 22-digit bank account key (legacy, optional)"
                  },
                  "destinationCVU": {
                    "type": "string",
                    "description": "CVU — 22-digit virtual account key (legacy, optional)"
                  },
                  "destinationAlias": {
                    "type": "string",
                    "description": "Account alias (legacy, optional)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Document type of the recipient (legacy, optional)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Argentinian bank deposit details",
                "title": "Bank Deposit AR"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Recipient bank name (required for Chilean bank payouts)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_CL"
                    ]
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "minLength": 1,
                    "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Document type of the recipient (legacy, optional)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationBankName",
                  "type",
                  "destinationBankAccountType",
                  "destinationTaxId"
                ],
                "description": "Chilean bank deposit details",
                "title": "Bank Deposit CL"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "minLength": 2,
                    "maxLength": 30,
                    "description": "Recipient name (required, 2–30 characters)"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 11,
                    "description": "Bank account number (max 11 digits for Bolivian accounts)"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (unused for BOB — no network discovery)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "maxLength": 20,
                    "description": "Bank name (optional, max 20 characters)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_BO"
                    ]
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 15,
                    "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type",
                  "destinationTaxId"
                ],
                "description": "Bolivian bank deposit details",
                "title": "Bank Deposit BO"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_PE"
                    ]
                  },
                  "destinationCCI": {
                    "type": "string",
                    "description": "CCI — 20-digit interbank account code (legacy, optional)"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Account type (corriente/ahorro) (legacy, optional)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Document type of the recipient (legacy, optional)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationNetworkId",
                  "type"
                ],
                "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit PE",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "pattern": "^\\d{3}$",
                    "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                  },
                  "destinationBankAccountNumber": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 20,
                    "description": "Recipient bank account number (max 20)"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "enum": [
                      "CORRIENTE",
                      "AHORROS",
                      "PHONE"
                    ],
                    "description": "Bank account type"
                  },
                  "destinationCCI": {
                    "type": "string",
                    "pattern": "^\\d{1,20}$",
                    "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "enum": [
                      "CC",
                      "CE",
                      "RUC",
                      "PAS",
                      "PAR",
                      "LMI",
                      "OTHER"
                    ],
                    "description": "Recipient identification type"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 50,
                    "description": "Recipient identification number (max 50)"
                  },
                  "email": {
                    "type": "string",
                    "pattern": "^.+@.+\\..+$",
                    "description": "Recipient email (required for PEN payouts)"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "pattern": "^\\d{1,9}$",
                    "description": "Recipient phone number (required, max 9 digits)"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_PEN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankCode",
                  "destinationBankAccountNumber",
                  "destinationBankAccountType",
                  "destinationCCI",
                  "destinationDocumentType",
                  "destinationTaxId",
                  "email",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Peruvian bank deposit details (bank-code payout corridor).",
                "title": "Bank Deposit PEN"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_NG"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Nigeria bank deposit details",
                "title": "Bank Deposit NG"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_KE"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Kenya bank deposit details",
                "title": "Bank Deposit KE"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_GH"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit GH",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_ZA"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "South Africa bank deposit details",
                "title": "Bank Deposit ZA"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_TZ"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Tanzania bank deposit details",
                "title": "Bank Deposit TZ"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_UG"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Uganda bank deposit details",
                "title": "Bank Deposit UG"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_RW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Rwanda bank deposit details",
                "title": "Bank Deposit RW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_MW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Malawi bank deposit details",
                "title": "Bank Deposit MW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_ZM"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Zambia bank deposit details",
                "title": "Bank Deposit ZM"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_BW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Botswana bank deposit details",
                "title": "Bank Deposit BW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_CD"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit CD",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_XOF"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "West African CFA bank deposit details",
                "title": "Bank Deposit XOF"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_XAF"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Central African CFA bank deposit details",
                "title": "Bank Deposit XAF"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_NG"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Nigeria mobile money details",
                "title": "Mobile Money NG"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_KE"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Kenya mobile money details",
                "title": "Mobile Money KE"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_GH"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Mobile Money GH",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_ZA"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "South Africa mobile money details",
                "title": "Mobile Money ZA"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_TZ"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Tanzania mobile money details",
                "title": "Mobile Money TZ"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_UG"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Uganda mobile money details",
                "title": "Mobile Money UG"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_RW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Rwanda mobile money details",
                "title": "Mobile Money RW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_MW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Malawi mobile money details",
                "title": "Mobile Money MW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_ZM"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Zambia mobile money details",
                "title": "Mobile Money ZM"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_BW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Botswana mobile money details",
                "title": "Mobile Money BW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_CD"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Mobile Money CD",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_XOF"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "West African CFA mobile money details",
                "title": "Mobile Money XOF"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_XAF"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Central African CFA mobile money details",
                "title": "Mobile Money XAF"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Bank code"
                  },
                  "destinationBankAccountNumber": {
                    "type": "string",
                    "description": "Bank account number (18-digit CLABE)"
                  },
                  "numericReference": {
                    "type": "string",
                    "description": "Numeric reference"
                  },
                  "notesReference": {
                    "type": "string",
                    "description": "Notes reference"
                  },
                  "destinationClabe": {
                    "type": "string",
                    "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_MX"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccountNumber",
                  "type"
                ],
                "description": "Mexican bank deposit details",
                "title": "Bank Deposit MX"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPseNumber": {
                    "type": "string",
                    "description": "PSE number"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "PSE"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPseNumber",
                  "type"
                ],
                "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "PSE",
                "deprecated": true
              }
            ],
            "description": "The details required for the end user destination transfer method."
          },
          "status": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "Pending",
                  "Processing",
                  "Success",
                  "Failed",
                  "Canceled",
                  "Reviewing"
                ],
                "description": "Common status values that are shared across all operation types",
                "examples": [
                  "Pending",
                  "Processing",
                  "Success",
                  "Failed",
                  "Canceled",
                  "Reviewing"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "PendingCancel",
                  "PendingWithdrawal",
                  "PendingVerification",
                  "Pending2FA",
                  "Compliance",
                  "Accepted",
                  "Approved",
                  "Rejected",
                  "Review"
                ]
              }
            ],
            "description": "Status of the withdrawal",
            "examples": [
              "Pending",
              "Pending2FA",
              "Compliance",
              "Accepted",
              "Approved",
              "Success",
              "Failed",
              "Review",
              "Rejected"
            ]
          },
          "withdrawalInfo": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "BALANCE"
                    ]
                  }
                },
                "required": [
                  "type"
                ],
                "description": "Balance transfer details",
                "title": "Balance"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "iban": {
                    "type": "string",
                    "description": "IBAN number"
                  },
                  "bic": {
                    "type": "string",
                    "description": "BIC number (optional)"
                  },
                  "country": {
                    "type": "string",
                    "description": "Country code"
                  },
                  "accountType": {
                    "type": "string",
                    "enum": [
                      "PERSONAL",
                      "BUSINESS"
                    ],
                    "default": "PERSONAL",
                    "description": "Account type (optional)"
                  },
                  "city": {
                    "type": "string",
                    "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                  },
                  "postalCode": {
                    "type": "string",
                    "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                  },
                  "address": {
                    "type": "string",
                    "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "SEPA"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "iban",
                  "country",
                  "type"
                ],
                "description": "SEPA transfer details",
                "title": "SEPA"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "UK bank account number"
                  },
                  "sortCode": {
                    "type": "string",
                    "description": "UK sort code"
                  },
                  "country": {
                    "type": "string",
                    "enum": [
                      "GB"
                    ],
                    "default": "GB",
                    "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                  },
                  "accountType": {
                    "type": "string",
                    "enum": [
                      "PERSONAL",
                      "BUSINESS"
                    ],
                    "default": "PERSONAL",
                    "description": "Account type (optional)"
                  },
                  "city": {
                    "type": "string",
                    "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                  },
                  "postalCode": {
                    "type": "string",
                    "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                  },
                  "address": {
                    "type": "string",
                    "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "GBP_BANK_TRANSFER"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "accountNumber",
                  "sortCode",
                  "type"
                ],
                "description": "GBP domestic bank transfer details",
                "title": "BankDepositGB"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "US bank account number"
                  },
                  "routingNumber": {
                    "type": "string",
                    "description": "US ABA routing number"
                  },
                  "country": {
                    "type": "string",
                    "enum": [
                      "US"
                    ],
                    "default": "US",
                    "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                  },
                  "accountType": {
                    "type": "string",
                    "enum": [
                      "PERSONAL",
                      "BUSINESS"
                    ],
                    "default": "PERSONAL",
                    "description": "Account type (optional)"
                  },
                  "bankAccountType": {
                    "type": "string",
                    "enum": [
                      "CHECKING",
                      "SAVINGS"
                    ],
                    "default": "CHECKING",
                    "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                  },
                  "city": {
                    "type": "string",
                    "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                  },
                  "postalCode": {
                    "type": "string",
                    "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                  },
                  "state": {
                    "type": "string",
                    "pattern": "^[A-Z]{2}$",
                    "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                  },
                  "address": {
                    "type": "string",
                    "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "ACH_US"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "accountNumber",
                  "routingNumber",
                  "state",
                  "type"
                ],
                "description": "USD ACH transfer details",
                "title": "AchUS"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "linkedBankAccount"
                    ]
                  },
                  "accountLinkId": {
                    "type": "string",
                    "pattern": "^alnk_[0-9a-f]{24}$",
                    "description": "Identifier of one of the account holder own linked bank accounts",
                    "examples": [
                      "alnk_0123456789abcdef01234567"
                    ]
                  }
                },
                "required": [
                  "type",
                  "accountLinkId"
                ],
                "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                "title": "LinkedBankAccount",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "ETH"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "ETH destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "ETH"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "MATIC"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "MATIC destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "MATIC"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "SOL"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "SOL destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "SOL"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "TRON"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "TRON destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "TRON"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "CELO"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "CELO destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "CELO"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "BTC"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "BTC destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "BTC"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "SOLANA"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "SOLANA destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "SOLANA"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "XRP"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "XRP destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "XRP"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "CARDANO"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "CARDANO destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "CARDANO"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "BSC"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "BSC destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "BSC"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "ARBITRUM"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "ARBITRUM destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "ARBITRUM"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "OPTIMISM"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "OPTIMISM destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "OPTIMISM"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "AVALANCHE"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "AVALANCHE destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "AVALANCHE"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "BASE"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "BASE destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "BASE"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_COL"
                    ]
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Recipient ID document number. Required when creating or updating a destination."
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                "title": "Bank Deposit COL"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "brebKey": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Bre-B key (llave) that identifies the recipient account"
                  },
                  "email": {
                    "type": "string",
                    "description": "Recipient email (optional contact for the Bre-B rail)"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Recipient phone number (optional contact for the Bre-B rail)"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BRE_B_COP"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "brebKey",
                  "type"
                ],
                "description": "Colombian Bre-B payout details",
                "title": "Bre-B COP"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "pattern": "^\\d{4}$",
                    "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                  },
                  "destinationBankAccountNumber": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Recipient bank account number"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Recipient ID document number"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "ACH_COP"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankCode",
                  "destinationBankAccountNumber",
                  "destinationBankAccountType",
                  "destinationDocumentType",
                  "destinationTaxId",
                  "type"
                ],
                "description": "Colombian ACH payout details",
                "title": "ACH COP"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (unused for TWD — no network discovery)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "minLength": 2,
                    "description": "Bank name (required — TWD payouts run over SWIFT)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_TW"
                    ]
                  },
                  "destinationBankBranch": {
                    "type": "string",
                    "minLength": 2,
                    "description": "Bank branch (required — TWD payouts run over SWIFT)"
                  },
                  "bic": {
                    "type": "string",
                    "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                    "description": "SWIFT BIC code (required for TWD payouts)"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Type of bank account (legacy, optional)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Tax ID of the recipient (legacy, optional)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Document type of the recipient (legacy, optional)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationBankName",
                  "type",
                  "destinationBankBranch",
                  "bic"
                ],
                "description": "Taiwan bank deposit details (SWIFT payout)",
                "title": "Bank Deposit TW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Bank code"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationBankBranch": {
                    "type": "string",
                    "description": "Bank branch"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Tax ID of the recipient"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_BR"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankCode",
                  "destinationBankAccount",
                  "destinationBankBranch",
                  "destinationTaxId",
                  "type"
                ],
                "description": "Brazilian bank deposit details",
                "title": "Bank Deposit BR"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPixCode": {
                    "type": "string",
                    "description": "PIX code"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Tax ID of the recipient"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "PIX_BR"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPixCode",
                  "destinationTaxId",
                  "type"
                ],
                "description": "Brazilian PIX details",
                "title": "PIX BR"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccountNumber": {
                    "type": "string",
                    "description": "Bank account number"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Name of the bank"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                    "description": "Tax ID of the recipient"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Type of bank account"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_VEN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccountNumber",
                  "destinationBankName",
                  "destinationTaxId",
                  "destinationBankAccountType",
                  "type"
                ],
                "description": "Venezuelan bank deposit details",
                "title": "Bank Deposit VEN"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Bank code"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                    "description": "Tax ID of the recipient"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Type of bank account"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "PHONE_DEPOSIT_VEN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankCode",
                  "destinationPhoneNumber",
                  "destinationTaxId",
                  "destinationBankAccountType",
                  "type"
                ],
                "description": "Venezuelan phone deposit details",
                "title": "Phone Deposit VEN"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_IN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit IN",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "IMPS"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "IMPS",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "THAI_QR"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Thai QR",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "VIET_QR"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Viet QR",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "GCASH"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "GCash",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Tax ID"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_PAYMENT_IN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "destinationTaxId",
                  "type"
                ],
                "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Mobile Payment IN",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Bank code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_VN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationBankCode",
                  "type"
                ],
                "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit VN",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "bic": {
                    "type": "string",
                    "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "destinationAddress": {
                    "type": "string",
                    "description": "Address line 1 of the recipient"
                  },
                  "destinationCity": {
                    "type": "string",
                    "description": "Recipient city (defaults to Hong Kong)"
                  },
                  "accountHolderName": {
                    "type": "string",
                    "description": "Bank account holder name if different from payee"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_HK"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "bic",
                  "destinationBankName",
                  "destinationAddress",
                  "type"
                ],
                "description": "Hong Kong bank deposit details (HKD bank corridor)",
                "title": "Bank Deposit HK"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "pattern": "^\\d+$",
                    "description": "CNAPS / bank institution code (numeric, variable length)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "destinationAddress": {
                    "type": "string",
                    "description": "Address line 1 of the recipient"
                  },
                  "destinationCity": {
                    "type": "string",
                    "description": "Recipient city"
                  },
                  "destinationState": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                  },
                  "destinationPostcode": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                  },
                  "destinationPhone": {
                    "type": "string",
                    "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                  },
                  "accountHolderName": {
                    "type": "string",
                    "description": "Bank account holder name if different from payee"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_CN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationBankCode",
                  "destinationBankName",
                  "destinationAddress",
                  "destinationCity",
                  "destinationState",
                  "destinationPostcode",
                  "type"
                ],
                "description": "China mainland bank deposit details (CNY bank corridor)",
                "title": "Bank Deposit CN"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_AR"
                    ]
                  },
                  "destinationCBU": {
                    "type": "string",
                    "description": "CBU — 22-digit bank account key (legacy, optional)"
                  },
                  "destinationCVU": {
                    "type": "string",
                    "description": "CVU — 22-digit virtual account key (legacy, optional)"
                  },
                  "destinationAlias": {
                    "type": "string",
                    "description": "Account alias (legacy, optional)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Document type of the recipient (legacy, optional)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Argentinian bank deposit details",
                "title": "Bank Deposit AR"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Recipient bank name (required for Chilean bank payouts)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_CL"
                    ]
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "minLength": 1,
                    "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Document type of the recipient (legacy, optional)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationBankName",
                  "type",
                  "destinationBankAccountType",
                  "destinationTaxId"
                ],
                "description": "Chilean bank deposit details",
                "title": "Bank Deposit CL"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "minLength": 2,
                    "maxLength": 30,
                    "description": "Recipient name (required, 2–30 characters)"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 11,
                    "description": "Bank account number (max 11 digits for Bolivian accounts)"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (unused for BOB — no network discovery)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "maxLength": 20,
                    "description": "Bank name (optional, max 20 characters)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_BO"
                    ]
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 15,
                    "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type",
                  "destinationTaxId"
                ],
                "description": "Bolivian bank deposit details",
                "title": "Bank Deposit BO"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_PE"
                    ]
                  },
                  "destinationCCI": {
                    "type": "string",
                    "description": "CCI — 20-digit interbank account code (legacy, optional)"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Account type (corriente/ahorro) (legacy, optional)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Document type of the recipient (legacy, optional)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationNetworkId",
                  "type"
                ],
                "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit PE",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "pattern": "^\\d{3}$",
                    "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                  },
                  "destinationBankAccountNumber": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 20,
                    "description": "Recipient bank account number (max 20)"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "enum": [
                      "CORRIENTE",
                      "AHORROS",
                      "PHONE"
                    ],
                    "description": "Bank account type"
                  },
                  "destinationCCI": {
                    "type": "string",
                    "pattern": "^\\d{1,20}$",
                    "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "enum": [
                      "CC",
                      "CE",
                      "RUC",
                      "PAS",
                      "PAR",
                      "LMI",
                      "OTHER"
                    ],
                    "description": "Recipient identification type"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 50,
                    "description": "Recipient identification number (max 50)"
                  },
                  "email": {
                    "type": "string",
                    "pattern": "^.+@.+\\..+$",
                    "description": "Recipient email (required for PEN payouts)"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "pattern": "^\\d{1,9}$",
                    "description": "Recipient phone number (required, max 9 digits)"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_PEN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankCode",
                  "destinationBankAccountNumber",
                  "destinationBankAccountType",
                  "destinationCCI",
                  "destinationDocumentType",
                  "destinationTaxId",
                  "email",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Peruvian bank deposit details (bank-code payout corridor).",
                "title": "Bank Deposit PEN"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_NG"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Nigeria bank deposit details",
                "title": "Bank Deposit NG"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_KE"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Kenya bank deposit details",
                "title": "Bank Deposit KE"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_GH"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit GH",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_ZA"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "South Africa bank deposit details",
                "title": "Bank Deposit ZA"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_TZ"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Tanzania bank deposit details",
                "title": "Bank Deposit TZ"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_UG"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Uganda bank deposit details",
                "title": "Bank Deposit UG"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_RW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Rwanda bank deposit details",
                "title": "Bank Deposit RW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_MW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Malawi bank deposit details",
                "title": "Bank Deposit MW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_ZM"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Zambia bank deposit details",
                "title": "Bank Deposit ZM"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_BW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Botswana bank deposit details",
                "title": "Bank Deposit BW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_CD"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit CD",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_XOF"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "West African CFA bank deposit details",
                "title": "Bank Deposit XOF"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_XAF"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Central African CFA bank deposit details",
                "title": "Bank Deposit XAF"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_NG"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Nigeria mobile money details",
                "title": "Mobile Money NG"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_KE"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Kenya mobile money details",
                "title": "Mobile Money KE"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_GH"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Mobile Money GH",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_ZA"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "South Africa mobile money details",
                "title": "Mobile Money ZA"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_TZ"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Tanzania mobile money details",
                "title": "Mobile Money TZ"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_UG"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Uganda mobile money details",
                "title": "Mobile Money UG"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_RW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Rwanda mobile money details",
                "title": "Mobile Money RW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_MW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Malawi mobile money details",
                "title": "Mobile Money MW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_ZM"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Zambia mobile money details",
                "title": "Mobile Money ZM"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_BW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Botswana mobile money details",
                "title": "Mobile Money BW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_CD"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Mobile Money CD",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_XOF"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "West African CFA mobile money details",
                "title": "Mobile Money XOF"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_XAF"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Central African CFA mobile money details",
                "title": "Mobile Money XAF"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Bank code"
                  },
                  "destinationBankAccountNumber": {
                    "type": "string",
                    "description": "Bank account number (18-digit CLABE)"
                  },
                  "numericReference": {
                    "type": "string",
                    "description": "Numeric reference"
                  },
                  "notesReference": {
                    "type": "string",
                    "description": "Notes reference"
                  },
                  "destinationClabe": {
                    "type": "string",
                    "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_MX"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccountNumber",
                  "type"
                ],
                "description": "Mexican bank deposit details",
                "title": "Bank Deposit MX"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPseNumber": {
                    "type": "string",
                    "description": "PSE number"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "PSE"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPseNumber",
                  "type"
                ],
                "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "PSE",
                "deprecated": true
              }
            ],
            "description": "Detailed withdrawal information",
            "title": "WithdrawalInfo"
          },
          "source": {
            "type": "string",
            "enum": [
              "ui",
              "apiApp",
              "externalApi",
              "internal"
            ],
            "description": "Source of withdrawal creation",
            "example": "externalApi"
          },
          "requires2FA": {
            "type": "boolean",
            "description": "Whether 2FA is required for this withdrawal",
            "example": false
          },
          "twoFactorToken": {
            "type": "string",
            "description": "2FA token for email approval",
            "example": "abc123"
          },
          "twoFactorApprovedAt": {
            "type": "number",
            "description": "Timestamp when 2FA was approved",
            "example": 1723027132
          },
          "errorCode": {
            "type": "string",
            "description": "Error code when status is Review",
            "example": "INSUFFICIENT_BALANCE"
          },
          "errorDetails": {
            "type": "string",
            "description": "Detailed error information",
            "example": "Insufficient balance for withdrawal"
          },
          "reviewedBy": {
            "type": "string",
            "description": "Admin email who reviewed the withdrawal",
            "example": "admin@example.com"
          },
          "reviewedAt": {
            "type": "number",
            "description": "Timestamp when review happened",
            "example": 1723027132
          }
        },
        "required": [
          "withdrawalId",
          "createdAt",
          "amount",
          "currency",
          "fee",
          "feeCurrency",
          "status"
        ],
        "description": "Response schema for creating a withdrawal"
      },
      "GetWithdrawalRequest": {
        "type": "object",
        "properties": {
          "withdrawalId": {
            "type": "string",
            "description": "ID of the withdrawal"
          },
          "userEmail": {
            "type": "string",
            "format": "email",
            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
            "description": "Email of the user making the request",
            "example": "user@example.com"
          }
        },
        "required": [
          "withdrawalId"
        ],
        "description": "Request schema for getting withdrawal details"
      },
      "GetWithdrawalResponse": {
        "type": "object",
        "properties": {
          "withdrawalId": {
            "anyOf": [
              {
                "type": "string",
                "minLength": 12,
                "maxLength": 12,
                "pattern": "^[A-Z0-9]{12}$",
                "examples": [
                  "01CLFXMT67II",
                  "2R7E5Y5KFXP8",
                  "4FWWRE3Y2URM"
                ]
              },
              {
                "type": "string",
                "format": "uuid"
              }
            ],
            "description": "ID of the withdrawal"
          },
          "userData": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "userType": {
                    "type": "string",
                    "enum": [
                      "individual"
                    ]
                  },
                  "firstName": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 50,
                    "description": "First name of the user making the deposit (or representative for business)",
                    "examples": [
                      "John",
                      "Alice",
                      "Bob"
                    ]
                  },
                  "lastName": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "Last name of the user making the deposit (or representative for business)",
                    "examples": [
                      "Doe",
                      "Smith",
                      "Johnson"
                    ]
                  },
                  "userEmail": {
                    "type": "string",
                    "maxLength": 254,
                    "format": "email",
                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                    "description": "Email of the user making the deposit",
                    "examples": [
                      "user@virtuabroker.com",
                      "john.doe@example.com",
                      "alice@example.com"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "maxLength": 150,
                    "description": "Address of the user making the deposit",
                    "examples": [
                      "123 Main St, Anytown, ES",
                      "456 Elm St, Anytown, ES",
                      "789 Oak St, Anytown, ES"
                    ]
                  },
                  "taxDocumentType": {
                    "type": "string",
                    "maxLength": 50,
                    "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                    "examples": [
                      "CC",
                      "NIT",
                      "CE",
                      "NIF",
                      "Other"
                    ]
                  },
                  "taxId": {
                    "type": "string",
                    "maxLength": 30,
                    "description": "Tax ID of the user making the deposit",
                    "examples": [
                      "123-45-6789",
                      "987-65-4321",
                      "111-22-3333"
                    ]
                  },
                  "country": {
                    "type": "string",
                    "enum": [
                      "US",
                      "CA",
                      "GB",
                      "DE",
                      "FR",
                      "AU",
                      "JP",
                      "KR",
                      "SE",
                      "NO",
                      "DK",
                      "FI",
                      "NL",
                      "BE",
                      "CH",
                      "AT",
                      "NZ",
                      "SG",
                      "IE",
                      "LU",
                      "PT",
                      "ES",
                      "IT",
                      "GR",
                      "CZ",
                      "PL",
                      "HU",
                      "SK",
                      "SI",
                      "EE",
                      "LT",
                      "LV",
                      "IS",
                      "MT",
                      "CY",
                      "HR",
                      "RO",
                      "BG",
                      "BR",
                      "AR",
                      "CL",
                      "MX",
                      "CO",
                      "PE",
                      "PA",
                      "UY",
                      "BO",
                      "ZA",
                      "NG",
                      "KE",
                      "GH",
                      "TZ",
                      "UG",
                      "RW",
                      "MW",
                      "ZM",
                      "BW",
                      "CD",
                      "CI",
                      "CM",
                      "IL",
                      "AE",
                      "QA",
                      "SA",
                      "OM",
                      "KW",
                      "BH",
                      "MY",
                      "PH",
                      "TH",
                      "VN",
                      "ID",
                      "IN",
                      "LK",
                      "NP",
                      "BD",
                      "PK",
                      "EG",
                      "MA",
                      "DZ",
                      "TN",
                      "JO",
                      "LB",
                      "TR",
                      "KH",
                      "MM",
                      "LA",
                      "EN",
                      "BT",
                      "VE",
                      "TW",
                      "HK",
                      "CN"
                    ],
                    "description": "Country code of the user making the deposit",
                    "examples": [
                      "ES",
                      "US",
                      "GB"
                    ]
                  },
                  "state": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "State of the user making the deposit",
                    "examples": [
                      "Madrid",
                      "New York",
                      "London"
                    ]
                  },
                  "postalCode": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 30,
                    "description": "Postal code of the user making the deposit",
                    "examples": [
                      "12345",
                      "67890",
                      "abcde"
                    ]
                  },
                  "city": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "City of the user making the deposit",
                    "examples": [
                      "Madrid",
                      "New York",
                      "London"
                    ]
                  },
                  "dob": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 30,
                    "description": "Date of birth of the user making the deposit",
                    "examples": [
                      "1990-01-01",
                      "1995-05-15",
                      "1988-12-31"
                    ]
                  },
                  "phoneNumber": {
                    "type": "string",
                    "maxLength": 30,
                    "description": "Phone number of the user making the deposit",
                    "examples": [
                      "+447700900123",
                      "+447700900456",
                      "+447700900789"
                    ]
                  },
                  "kycId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 300,
                    "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                    "examples": [
                      "kyc-12345",
                      "kyc-67890",
                      "kyc-abcde"
                    ]
                  },
                  "activity": {
                    "type": "string",
                    "description": "Activity of the user making the deposit",
                    "examples": [
                      "worker",
                      "business",
                      "student"
                    ]
                  }
                },
                "required": [
                  "userType",
                  "firstName",
                  "userEmail",
                  "country"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "userType": {
                    "type": "string",
                    "enum": [
                      "business"
                    ]
                  },
                  "businessName": {
                    "type": "string",
                    "maxLength": 150,
                    "description": "Business name (required when userType is business)",
                    "examples": [
                      "Acme Corp",
                      "Tech Solutions Inc",
                      "Global Services Ltd"
                    ]
                  },
                  "firstName": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 50,
                    "description": "First name of the user making the deposit (or representative for business)",
                    "examples": [
                      "John",
                      "Alice",
                      "Bob"
                    ]
                  },
                  "userEmail": {
                    "type": "string",
                    "maxLength": 254,
                    "format": "email",
                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                    "description": "Email of the user making the deposit",
                    "examples": [
                      "user@virtuabroker.com",
                      "john.doe@example.com",
                      "alice@example.com"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "maxLength": 150,
                    "description": "Address of the user making the deposit",
                    "examples": [
                      "123 Main St, Anytown, ES",
                      "456 Elm St, Anytown, ES",
                      "789 Oak St, Anytown, ES"
                    ]
                  },
                  "taxDocumentType": {
                    "type": "string",
                    "maxLength": 50,
                    "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                    "examples": [
                      "CC",
                      "NIT",
                      "CE",
                      "NIF",
                      "Other"
                    ]
                  },
                  "taxId": {
                    "type": "string",
                    "maxLength": 30,
                    "description": "Tax ID of the user making the deposit",
                    "examples": [
                      "123-45-6789",
                      "987-65-4321",
                      "111-22-3333"
                    ]
                  },
                  "country": {
                    "type": "string",
                    "enum": [
                      "US",
                      "CA",
                      "GB",
                      "DE",
                      "FR",
                      "AU",
                      "JP",
                      "KR",
                      "SE",
                      "NO",
                      "DK",
                      "FI",
                      "NL",
                      "BE",
                      "CH",
                      "AT",
                      "NZ",
                      "SG",
                      "IE",
                      "LU",
                      "PT",
                      "ES",
                      "IT",
                      "GR",
                      "CZ",
                      "PL",
                      "HU",
                      "SK",
                      "SI",
                      "EE",
                      "LT",
                      "LV",
                      "IS",
                      "MT",
                      "CY",
                      "HR",
                      "RO",
                      "BG",
                      "BR",
                      "AR",
                      "CL",
                      "MX",
                      "CO",
                      "PE",
                      "PA",
                      "UY",
                      "BO",
                      "ZA",
                      "NG",
                      "KE",
                      "GH",
                      "TZ",
                      "UG",
                      "RW",
                      "MW",
                      "ZM",
                      "BW",
                      "CD",
                      "CI",
                      "CM",
                      "IL",
                      "AE",
                      "QA",
                      "SA",
                      "OM",
                      "KW",
                      "BH",
                      "MY",
                      "PH",
                      "TH",
                      "VN",
                      "ID",
                      "IN",
                      "LK",
                      "NP",
                      "BD",
                      "PK",
                      "EG",
                      "MA",
                      "DZ",
                      "TN",
                      "JO",
                      "LB",
                      "TR",
                      "KH",
                      "MM",
                      "LA",
                      "EN",
                      "BT",
                      "VE",
                      "TW",
                      "HK",
                      "CN"
                    ],
                    "description": "Country code of the user making the deposit",
                    "examples": [
                      "ES",
                      "US",
                      "GB"
                    ]
                  },
                  "state": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "State of the user making the deposit",
                    "examples": [
                      "Madrid",
                      "New York",
                      "London"
                    ]
                  },
                  "postalCode": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 30,
                    "description": "Postal code of the user making the deposit",
                    "examples": [
                      "12345",
                      "67890",
                      "abcde"
                    ]
                  },
                  "city": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "City of the user making the deposit",
                    "examples": [
                      "Madrid",
                      "New York",
                      "London"
                    ]
                  },
                  "dob": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 30,
                    "description": "Date of birth of the user making the deposit",
                    "examples": [
                      "1990-01-01",
                      "1995-05-15",
                      "1988-12-31"
                    ]
                  },
                  "phoneNumber": {
                    "type": "string",
                    "maxLength": 30,
                    "description": "Phone number of the user making the deposit",
                    "examples": [
                      "+447700900123",
                      "+447700900456",
                      "+447700900789"
                    ]
                  },
                  "kycId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 300,
                    "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                    "examples": [
                      "kyc-12345",
                      "kyc-67890",
                      "kyc-abcde"
                    ]
                  },
                  "activity": {
                    "type": "string",
                    "description": "Activity of the user making the deposit",
                    "examples": [
                      "worker",
                      "business",
                      "student"
                    ]
                  }
                },
                "required": [
                  "userType",
                  "businessName",
                  "firstName",
                  "userEmail",
                  "country"
                ]
              }
            ],
            "description": "User data for the withdrawal"
          },
          "createdAt": {
            "type": "number",
            "description": "Creation time of the withdrawal",
            "example": 1723027132
          },
          "updatedAt": {
            "type": "number",
            "description": "Last update time of the withdrawal",
            "example": 1723027132
          },
          "userEmail": {
            "type": "string",
            "format": "email",
            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
            "description": "Email of the user making the request",
            "example": "user@example.com"
          },
          "amount": {
            "type": "number",
            "description": "Amount to be withdrawn. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
            "example": 1000
          },
          "currency": {
            "type": "string",
            "description": "Currency of the withdrawal",
            "example": "EUR"
          },
          "fee": {
            "type": "number",
            "description": "Fee for the withdrawal. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
            "example": 10
          },
          "feeCurrency": {
            "type": "string",
            "description": "Currency of the fee",
            "example": "EUR"
          },
          "destinationTransferData": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "BALANCE"
                    ]
                  }
                },
                "required": [
                  "type"
                ],
                "description": "Balance transfer details",
                "title": "Balance"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "iban": {
                    "type": "string",
                    "description": "IBAN number"
                  },
                  "bic": {
                    "type": "string",
                    "description": "BIC number (optional)"
                  },
                  "country": {
                    "type": "string",
                    "description": "Country code"
                  },
                  "accountType": {
                    "type": "string",
                    "enum": [
                      "PERSONAL",
                      "BUSINESS"
                    ],
                    "default": "PERSONAL",
                    "description": "Account type (optional)"
                  },
                  "city": {
                    "type": "string",
                    "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                  },
                  "postalCode": {
                    "type": "string",
                    "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                  },
                  "address": {
                    "type": "string",
                    "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "SEPA"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "iban",
                  "country",
                  "type"
                ],
                "description": "SEPA transfer details",
                "title": "SEPA"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "UK bank account number"
                  },
                  "sortCode": {
                    "type": "string",
                    "description": "UK sort code"
                  },
                  "country": {
                    "type": "string",
                    "enum": [
                      "GB"
                    ],
                    "default": "GB",
                    "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                  },
                  "accountType": {
                    "type": "string",
                    "enum": [
                      "PERSONAL",
                      "BUSINESS"
                    ],
                    "default": "PERSONAL",
                    "description": "Account type (optional)"
                  },
                  "city": {
                    "type": "string",
                    "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                  },
                  "postalCode": {
                    "type": "string",
                    "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                  },
                  "address": {
                    "type": "string",
                    "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "GBP_BANK_TRANSFER"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "accountNumber",
                  "sortCode",
                  "type"
                ],
                "description": "GBP domestic bank transfer details",
                "title": "BankDepositGB"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "US bank account number"
                  },
                  "routingNumber": {
                    "type": "string",
                    "description": "US ABA routing number"
                  },
                  "country": {
                    "type": "string",
                    "enum": [
                      "US"
                    ],
                    "default": "US",
                    "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                  },
                  "accountType": {
                    "type": "string",
                    "enum": [
                      "PERSONAL",
                      "BUSINESS"
                    ],
                    "default": "PERSONAL",
                    "description": "Account type (optional)"
                  },
                  "bankAccountType": {
                    "type": "string",
                    "enum": [
                      "CHECKING",
                      "SAVINGS"
                    ],
                    "default": "CHECKING",
                    "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                  },
                  "city": {
                    "type": "string",
                    "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                  },
                  "postalCode": {
                    "type": "string",
                    "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                  },
                  "state": {
                    "type": "string",
                    "pattern": "^[A-Z]{2}$",
                    "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                  },
                  "address": {
                    "type": "string",
                    "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "ACH_US"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "accountNumber",
                  "routingNumber",
                  "state",
                  "type"
                ],
                "description": "USD ACH transfer details",
                "title": "AchUS"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "linkedBankAccount"
                    ]
                  },
                  "accountLinkId": {
                    "type": "string",
                    "pattern": "^alnk_[0-9a-f]{24}$",
                    "description": "Identifier of one of the account holder own linked bank accounts",
                    "examples": [
                      "alnk_0123456789abcdef01234567"
                    ]
                  }
                },
                "required": [
                  "type",
                  "accountLinkId"
                ],
                "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                "title": "LinkedBankAccount",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "ETH"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "ETH destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "ETH"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "MATIC"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "MATIC destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "MATIC"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "SOL"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "SOL destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "SOL"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "TRON"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "TRON destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "TRON"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "CELO"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "CELO destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "CELO"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "BTC"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "BTC destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "BTC"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "SOLANA"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "SOLANA destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "SOLANA"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "XRP"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "XRP destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "XRP"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "CARDANO"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "CARDANO destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "CARDANO"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "BSC"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "BSC destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "BSC"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "ARBITRUM"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "ARBITRUM destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "ARBITRUM"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "OPTIMISM"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "OPTIMISM destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "OPTIMISM"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "AVALANCHE"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "AVALANCHE destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "AVALANCHE"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "BASE"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "BASE destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "BASE"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_COL"
                    ]
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Recipient ID document number. Required when creating or updating a destination."
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                "title": "Bank Deposit COL"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "brebKey": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Bre-B key (llave) that identifies the recipient account"
                  },
                  "email": {
                    "type": "string",
                    "description": "Recipient email (optional contact for the Bre-B rail)"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Recipient phone number (optional contact for the Bre-B rail)"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BRE_B_COP"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "brebKey",
                  "type"
                ],
                "description": "Colombian Bre-B payout details",
                "title": "Bre-B COP"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "pattern": "^\\d{4}$",
                    "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                  },
                  "destinationBankAccountNumber": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Recipient bank account number"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Recipient ID document number"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "ACH_COP"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankCode",
                  "destinationBankAccountNumber",
                  "destinationBankAccountType",
                  "destinationDocumentType",
                  "destinationTaxId",
                  "type"
                ],
                "description": "Colombian ACH payout details",
                "title": "ACH COP"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (unused for TWD — no network discovery)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "minLength": 2,
                    "description": "Bank name (required — TWD payouts run over SWIFT)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_TW"
                    ]
                  },
                  "destinationBankBranch": {
                    "type": "string",
                    "minLength": 2,
                    "description": "Bank branch (required — TWD payouts run over SWIFT)"
                  },
                  "bic": {
                    "type": "string",
                    "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                    "description": "SWIFT BIC code (required for TWD payouts)"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Type of bank account (legacy, optional)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Tax ID of the recipient (legacy, optional)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Document type of the recipient (legacy, optional)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationBankName",
                  "type",
                  "destinationBankBranch",
                  "bic"
                ],
                "description": "Taiwan bank deposit details (SWIFT payout)",
                "title": "Bank Deposit TW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Bank code"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationBankBranch": {
                    "type": "string",
                    "description": "Bank branch"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Tax ID of the recipient"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_BR"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankCode",
                  "destinationBankAccount",
                  "destinationBankBranch",
                  "destinationTaxId",
                  "type"
                ],
                "description": "Brazilian bank deposit details",
                "title": "Bank Deposit BR"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPixCode": {
                    "type": "string",
                    "description": "PIX code"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Tax ID of the recipient"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "PIX_BR"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPixCode",
                  "destinationTaxId",
                  "type"
                ],
                "description": "Brazilian PIX details",
                "title": "PIX BR"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccountNumber": {
                    "type": "string",
                    "description": "Bank account number"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Name of the bank"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                    "description": "Tax ID of the recipient"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Type of bank account"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_VEN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccountNumber",
                  "destinationBankName",
                  "destinationTaxId",
                  "destinationBankAccountType",
                  "type"
                ],
                "description": "Venezuelan bank deposit details",
                "title": "Bank Deposit VEN"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Bank code"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                    "description": "Tax ID of the recipient"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Type of bank account"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "PHONE_DEPOSIT_VEN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankCode",
                  "destinationPhoneNumber",
                  "destinationTaxId",
                  "destinationBankAccountType",
                  "type"
                ],
                "description": "Venezuelan phone deposit details",
                "title": "Phone Deposit VEN"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_IN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit IN",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "IMPS"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "IMPS",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "THAI_QR"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Thai QR",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "VIET_QR"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Viet QR",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "GCASH"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "GCash",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Tax ID"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_PAYMENT_IN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "destinationTaxId",
                  "type"
                ],
                "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Mobile Payment IN",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Bank code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_VN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationBankCode",
                  "type"
                ],
                "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit VN",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "bic": {
                    "type": "string",
                    "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "destinationAddress": {
                    "type": "string",
                    "description": "Address line 1 of the recipient"
                  },
                  "destinationCity": {
                    "type": "string",
                    "description": "Recipient city (defaults to Hong Kong)"
                  },
                  "accountHolderName": {
                    "type": "string",
                    "description": "Bank account holder name if different from payee"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_HK"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "bic",
                  "destinationBankName",
                  "destinationAddress",
                  "type"
                ],
                "description": "Hong Kong bank deposit details (HKD bank corridor)",
                "title": "Bank Deposit HK"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "pattern": "^\\d+$",
                    "description": "CNAPS / bank institution code (numeric, variable length)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "destinationAddress": {
                    "type": "string",
                    "description": "Address line 1 of the recipient"
                  },
                  "destinationCity": {
                    "type": "string",
                    "description": "Recipient city"
                  },
                  "destinationState": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                  },
                  "destinationPostcode": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                  },
                  "destinationPhone": {
                    "type": "string",
                    "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                  },
                  "accountHolderName": {
                    "type": "string",
                    "description": "Bank account holder name if different from payee"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_CN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationBankCode",
                  "destinationBankName",
                  "destinationAddress",
                  "destinationCity",
                  "destinationState",
                  "destinationPostcode",
                  "type"
                ],
                "description": "China mainland bank deposit details (CNY bank corridor)",
                "title": "Bank Deposit CN"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_AR"
                    ]
                  },
                  "destinationCBU": {
                    "type": "string",
                    "description": "CBU — 22-digit bank account key (legacy, optional)"
                  },
                  "destinationCVU": {
                    "type": "string",
                    "description": "CVU — 22-digit virtual account key (legacy, optional)"
                  },
                  "destinationAlias": {
                    "type": "string",
                    "description": "Account alias (legacy, optional)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Document type of the recipient (legacy, optional)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Argentinian bank deposit details",
                "title": "Bank Deposit AR"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Recipient bank name (required for Chilean bank payouts)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_CL"
                    ]
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "minLength": 1,
                    "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Document type of the recipient (legacy, optional)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationBankName",
                  "type",
                  "destinationBankAccountType",
                  "destinationTaxId"
                ],
                "description": "Chilean bank deposit details",
                "title": "Bank Deposit CL"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "minLength": 2,
                    "maxLength": 30,
                    "description": "Recipient name (required, 2–30 characters)"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 11,
                    "description": "Bank account number (max 11 digits for Bolivian accounts)"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (unused for BOB — no network discovery)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "maxLength": 20,
                    "description": "Bank name (optional, max 20 characters)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_BO"
                    ]
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 15,
                    "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type",
                  "destinationTaxId"
                ],
                "description": "Bolivian bank deposit details",
                "title": "Bank Deposit BO"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_PE"
                    ]
                  },
                  "destinationCCI": {
                    "type": "string",
                    "description": "CCI — 20-digit interbank account code (legacy, optional)"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Account type (corriente/ahorro) (legacy, optional)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Document type of the recipient (legacy, optional)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationNetworkId",
                  "type"
                ],
                "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit PE",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "pattern": "^\\d{3}$",
                    "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                  },
                  "destinationBankAccountNumber": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 20,
                    "description": "Recipient bank account number (max 20)"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "enum": [
                      "CORRIENTE",
                      "AHORROS",
                      "PHONE"
                    ],
                    "description": "Bank account type"
                  },
                  "destinationCCI": {
                    "type": "string",
                    "pattern": "^\\d{1,20}$",
                    "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "enum": [
                      "CC",
                      "CE",
                      "RUC",
                      "PAS",
                      "PAR",
                      "LMI",
                      "OTHER"
                    ],
                    "description": "Recipient identification type"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 50,
                    "description": "Recipient identification number (max 50)"
                  },
                  "email": {
                    "type": "string",
                    "pattern": "^.+@.+\\..+$",
                    "description": "Recipient email (required for PEN payouts)"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "pattern": "^\\d{1,9}$",
                    "description": "Recipient phone number (required, max 9 digits)"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_PEN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankCode",
                  "destinationBankAccountNumber",
                  "destinationBankAccountType",
                  "destinationCCI",
                  "destinationDocumentType",
                  "destinationTaxId",
                  "email",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Peruvian bank deposit details (bank-code payout corridor).",
                "title": "Bank Deposit PEN"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_NG"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Nigeria bank deposit details",
                "title": "Bank Deposit NG"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_KE"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Kenya bank deposit details",
                "title": "Bank Deposit KE"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_GH"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit GH",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_ZA"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "South Africa bank deposit details",
                "title": "Bank Deposit ZA"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_TZ"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Tanzania bank deposit details",
                "title": "Bank Deposit TZ"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_UG"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Uganda bank deposit details",
                "title": "Bank Deposit UG"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_RW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Rwanda bank deposit details",
                "title": "Bank Deposit RW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_MW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Malawi bank deposit details",
                "title": "Bank Deposit MW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_ZM"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Zambia bank deposit details",
                "title": "Bank Deposit ZM"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_BW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Botswana bank deposit details",
                "title": "Bank Deposit BW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_CD"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit CD",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_XOF"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "West African CFA bank deposit details",
                "title": "Bank Deposit XOF"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_XAF"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Central African CFA bank deposit details",
                "title": "Bank Deposit XAF"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_NG"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Nigeria mobile money details",
                "title": "Mobile Money NG"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_KE"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Kenya mobile money details",
                "title": "Mobile Money KE"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_GH"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Mobile Money GH",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_ZA"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "South Africa mobile money details",
                "title": "Mobile Money ZA"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_TZ"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Tanzania mobile money details",
                "title": "Mobile Money TZ"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_UG"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Uganda mobile money details",
                "title": "Mobile Money UG"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_RW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Rwanda mobile money details",
                "title": "Mobile Money RW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_MW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Malawi mobile money details",
                "title": "Mobile Money MW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_ZM"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Zambia mobile money details",
                "title": "Mobile Money ZM"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_BW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Botswana mobile money details",
                "title": "Mobile Money BW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_CD"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Mobile Money CD",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_XOF"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "West African CFA mobile money details",
                "title": "Mobile Money XOF"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_XAF"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Central African CFA mobile money details",
                "title": "Mobile Money XAF"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Bank code"
                  },
                  "destinationBankAccountNumber": {
                    "type": "string",
                    "description": "Bank account number (18-digit CLABE)"
                  },
                  "numericReference": {
                    "type": "string",
                    "description": "Numeric reference"
                  },
                  "notesReference": {
                    "type": "string",
                    "description": "Notes reference"
                  },
                  "destinationClabe": {
                    "type": "string",
                    "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_MX"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccountNumber",
                  "type"
                ],
                "description": "Mexican bank deposit details",
                "title": "Bank Deposit MX"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPseNumber": {
                    "type": "string",
                    "description": "PSE number"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "PSE"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPseNumber",
                  "type"
                ],
                "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "PSE",
                "deprecated": true
              }
            ],
            "description": "The details required for the end user destination transfer method."
          },
          "status": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "Pending",
                  "Processing",
                  "Success",
                  "Failed",
                  "Canceled",
                  "Reviewing"
                ],
                "description": "Common status values that are shared across all operation types",
                "examples": [
                  "Pending",
                  "Processing",
                  "Success",
                  "Failed",
                  "Canceled",
                  "Reviewing"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "PendingCancel",
                  "PendingWithdrawal",
                  "PendingVerification",
                  "Pending2FA",
                  "Compliance",
                  "Accepted",
                  "Approved",
                  "Rejected",
                  "Review"
                ]
              }
            ],
            "description": "Status of the withdrawal",
            "examples": [
              "Pending",
              "Pending2FA",
              "Compliance",
              "Accepted",
              "Approved",
              "Success",
              "Failed",
              "Review",
              "Rejected"
            ]
          },
          "withdrawalInfo": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "BALANCE"
                    ]
                  }
                },
                "required": [
                  "type"
                ],
                "description": "Balance transfer details",
                "title": "Balance"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "iban": {
                    "type": "string",
                    "description": "IBAN number"
                  },
                  "bic": {
                    "type": "string",
                    "description": "BIC number (optional)"
                  },
                  "country": {
                    "type": "string",
                    "description": "Country code"
                  },
                  "accountType": {
                    "type": "string",
                    "enum": [
                      "PERSONAL",
                      "BUSINESS"
                    ],
                    "default": "PERSONAL",
                    "description": "Account type (optional)"
                  },
                  "city": {
                    "type": "string",
                    "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                  },
                  "postalCode": {
                    "type": "string",
                    "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                  },
                  "address": {
                    "type": "string",
                    "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "SEPA"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "iban",
                  "country",
                  "type"
                ],
                "description": "SEPA transfer details",
                "title": "SEPA"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "UK bank account number"
                  },
                  "sortCode": {
                    "type": "string",
                    "description": "UK sort code"
                  },
                  "country": {
                    "type": "string",
                    "enum": [
                      "GB"
                    ],
                    "default": "GB",
                    "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                  },
                  "accountType": {
                    "type": "string",
                    "enum": [
                      "PERSONAL",
                      "BUSINESS"
                    ],
                    "default": "PERSONAL",
                    "description": "Account type (optional)"
                  },
                  "city": {
                    "type": "string",
                    "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                  },
                  "postalCode": {
                    "type": "string",
                    "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                  },
                  "address": {
                    "type": "string",
                    "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "GBP_BANK_TRANSFER"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "accountNumber",
                  "sortCode",
                  "type"
                ],
                "description": "GBP domestic bank transfer details",
                "title": "BankDepositGB"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "US bank account number"
                  },
                  "routingNumber": {
                    "type": "string",
                    "description": "US ABA routing number"
                  },
                  "country": {
                    "type": "string",
                    "enum": [
                      "US"
                    ],
                    "default": "US",
                    "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                  },
                  "accountType": {
                    "type": "string",
                    "enum": [
                      "PERSONAL",
                      "BUSINESS"
                    ],
                    "default": "PERSONAL",
                    "description": "Account type (optional)"
                  },
                  "bankAccountType": {
                    "type": "string",
                    "enum": [
                      "CHECKING",
                      "SAVINGS"
                    ],
                    "default": "CHECKING",
                    "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                  },
                  "city": {
                    "type": "string",
                    "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                  },
                  "postalCode": {
                    "type": "string",
                    "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                  },
                  "state": {
                    "type": "string",
                    "pattern": "^[A-Z]{2}$",
                    "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                  },
                  "address": {
                    "type": "string",
                    "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "ACH_US"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "accountNumber",
                  "routingNumber",
                  "state",
                  "type"
                ],
                "description": "USD ACH transfer details",
                "title": "AchUS"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "linkedBankAccount"
                    ]
                  },
                  "accountLinkId": {
                    "type": "string",
                    "pattern": "^alnk_[0-9a-f]{24}$",
                    "description": "Identifier of one of the account holder own linked bank accounts",
                    "examples": [
                      "alnk_0123456789abcdef01234567"
                    ]
                  }
                },
                "required": [
                  "type",
                  "accountLinkId"
                ],
                "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                "title": "LinkedBankAccount",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "ETH"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "ETH destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "ETH"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "MATIC"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "MATIC destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "MATIC"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "SOL"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "SOL destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "SOL"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "TRON"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "TRON destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "TRON"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "CELO"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "CELO destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "CELO"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "BTC"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "BTC destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "BTC"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "SOLANA"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "SOLANA destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "SOLANA"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "XRP"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "XRP destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "XRP"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "CARDANO"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "CARDANO destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "\\S"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "\\S"
                      }
                    }
                  }
                ],
                "title": "CARDANO"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "BSC"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "BSC destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "BSC"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "ARBITRUM"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "ARBITRUM destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "ARBITRUM"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "OPTIMISM"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "OPTIMISM destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "OPTIMISM"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "AVALANCHE"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "AVALANCHE destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "AVALANCHE"
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "BASE"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                  },
                  "memo": {
                    "type": "string",
                    "description": "Memo for the wallet, when the chain uses one"
                  },
                  "txId": {
                    "type": "string",
                    "description": "Blockchain transaction ID"
                  },
                  "txUrlScan": {
                    "type": "string",
                    "description": "Blockchain explorer URL for the transaction"
                  },
                  "destinationWalletAddress": {
                    "type": "string",
                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                  },
                  "destinationWalletMemo": {
                    "type": "string",
                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                  },
                  "destinationNetwork": {
                    "type": "string",
                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                  },
                  "destinationCurrencySymbol": {
                    "type": "string",
                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                  }
                },
                "required": [
                  "type"
                ],
                "description": "BASE destination details",
                "anyOf": [
                  {
                    "required": [
                      "address"
                    ],
                    "properties": {
                      "address": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  },
                  {
                    "required": [
                      "destinationWalletAddress"
                    ],
                    "properties": {
                      "destinationWalletAddress": {
                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                      }
                    }
                  }
                ],
                "title": "BASE"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_COL"
                    ]
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Recipient ID document number. Required when creating or updating a destination."
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                "title": "Bank Deposit COL"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "brebKey": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Bre-B key (llave) that identifies the recipient account"
                  },
                  "email": {
                    "type": "string",
                    "description": "Recipient email (optional contact for the Bre-B rail)"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Recipient phone number (optional contact for the Bre-B rail)"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BRE_B_COP"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "brebKey",
                  "type"
                ],
                "description": "Colombian Bre-B payout details",
                "title": "Bre-B COP"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "pattern": "^\\d{4}$",
                    "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                  },
                  "destinationBankAccountNumber": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Recipient bank account number"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Recipient ID document number"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "ACH_COP"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankCode",
                  "destinationBankAccountNumber",
                  "destinationBankAccountType",
                  "destinationDocumentType",
                  "destinationTaxId",
                  "type"
                ],
                "description": "Colombian ACH payout details",
                "title": "ACH COP"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (unused for TWD — no network discovery)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "minLength": 2,
                    "description": "Bank name (required — TWD payouts run over SWIFT)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_TW"
                    ]
                  },
                  "destinationBankBranch": {
                    "type": "string",
                    "minLength": 2,
                    "description": "Bank branch (required — TWD payouts run over SWIFT)"
                  },
                  "bic": {
                    "type": "string",
                    "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                    "description": "SWIFT BIC code (required for TWD payouts)"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Type of bank account (legacy, optional)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Tax ID of the recipient (legacy, optional)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Document type of the recipient (legacy, optional)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationBankName",
                  "type",
                  "destinationBankBranch",
                  "bic"
                ],
                "description": "Taiwan bank deposit details (SWIFT payout)",
                "title": "Bank Deposit TW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Bank code"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationBankBranch": {
                    "type": "string",
                    "description": "Bank branch"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Tax ID of the recipient"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_BR"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankCode",
                  "destinationBankAccount",
                  "destinationBankBranch",
                  "destinationTaxId",
                  "type"
                ],
                "description": "Brazilian bank deposit details",
                "title": "Bank Deposit BR"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPixCode": {
                    "type": "string",
                    "description": "PIX code"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Tax ID of the recipient"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "PIX_BR"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPixCode",
                  "destinationTaxId",
                  "type"
                ],
                "description": "Brazilian PIX details",
                "title": "PIX BR"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccountNumber": {
                    "type": "string",
                    "description": "Bank account number"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Name of the bank"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                    "description": "Tax ID of the recipient"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Type of bank account"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_VEN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccountNumber",
                  "destinationBankName",
                  "destinationTaxId",
                  "destinationBankAccountType",
                  "type"
                ],
                "description": "Venezuelan bank deposit details",
                "title": "Bank Deposit VEN"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Bank code"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                    "description": "Tax ID of the recipient"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Type of bank account"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "PHONE_DEPOSIT_VEN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankCode",
                  "destinationPhoneNumber",
                  "destinationTaxId",
                  "destinationBankAccountType",
                  "type"
                ],
                "description": "Venezuelan phone deposit details",
                "title": "Phone Deposit VEN"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_IN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit IN",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "IMPS"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "IMPS",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "THAI_QR"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Thai QR",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "VIET_QR"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Viet QR",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationIFSC": {
                    "type": "string",
                    "description": "IFSC code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "GCASH"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "GCash",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Tax ID"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_PAYMENT_IN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "destinationTaxId",
                  "type"
                ],
                "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Mobile Payment IN",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Bank code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_VN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationBankCode",
                  "type"
                ],
                "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit VN",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "bic": {
                    "type": "string",
                    "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "destinationAddress": {
                    "type": "string",
                    "description": "Address line 1 of the recipient"
                  },
                  "destinationCity": {
                    "type": "string",
                    "description": "Recipient city (defaults to Hong Kong)"
                  },
                  "accountHolderName": {
                    "type": "string",
                    "description": "Bank account holder name if different from payee"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_HK"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "bic",
                  "destinationBankName",
                  "destinationAddress",
                  "type"
                ],
                "description": "Hong Kong bank deposit details (HKD bank corridor)",
                "title": "Bank Deposit HK"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "pattern": "^\\d+$",
                    "description": "CNAPS / bank institution code (numeric, variable length)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "destinationAddress": {
                    "type": "string",
                    "description": "Address line 1 of the recipient"
                  },
                  "destinationCity": {
                    "type": "string",
                    "description": "Recipient city"
                  },
                  "destinationState": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                  },
                  "destinationPostcode": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                  },
                  "destinationPhone": {
                    "type": "string",
                    "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                  },
                  "accountHolderName": {
                    "type": "string",
                    "description": "Bank account holder name if different from payee"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_CN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationBankCode",
                  "destinationBankName",
                  "destinationAddress",
                  "destinationCity",
                  "destinationState",
                  "destinationPostcode",
                  "type"
                ],
                "description": "China mainland bank deposit details (CNY bank corridor)",
                "title": "Bank Deposit CN"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_AR"
                    ]
                  },
                  "destinationCBU": {
                    "type": "string",
                    "description": "CBU — 22-digit bank account key (legacy, optional)"
                  },
                  "destinationCVU": {
                    "type": "string",
                    "description": "CVU — 22-digit virtual account key (legacy, optional)"
                  },
                  "destinationAlias": {
                    "type": "string",
                    "description": "Account alias (legacy, optional)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Document type of the recipient (legacy, optional)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Argentinian bank deposit details",
                "title": "Bank Deposit AR"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Recipient bank name (required for Chilean bank payouts)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_CL"
                    ]
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "minLength": 1,
                    "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Document type of the recipient (legacy, optional)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationBankName",
                  "type",
                  "destinationBankAccountType",
                  "destinationTaxId"
                ],
                "description": "Chilean bank deposit details",
                "title": "Bank Deposit CL"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "minLength": 2,
                    "maxLength": 30,
                    "description": "Recipient name (required, 2–30 characters)"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 11,
                    "description": "Bank account number (max 11 digits for Bolivian accounts)"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (unused for BOB — no network discovery)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "maxLength": 20,
                    "description": "Bank name (optional, max 20 characters)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_BO"
                    ]
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 15,
                    "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type",
                  "destinationTaxId"
                ],
                "description": "Bolivian bank deposit details",
                "title": "Bank Deposit BO"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_PE"
                    ]
                  },
                  "destinationCCI": {
                    "type": "string",
                    "description": "CCI — 20-digit interbank account code (legacy, optional)"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "description": "Account type (corriente/ahorro) (legacy, optional)"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "description": "Document type of the recipient (legacy, optional)"
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "destinationNetworkId",
                  "type"
                ],
                "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit PE",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "pattern": "^\\d{3}$",
                    "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                  },
                  "destinationBankAccountNumber": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 20,
                    "description": "Recipient bank account number (max 20)"
                  },
                  "destinationBankAccountType": {
                    "type": "string",
                    "enum": [
                      "CORRIENTE",
                      "AHORROS",
                      "PHONE"
                    ],
                    "description": "Bank account type"
                  },
                  "destinationCCI": {
                    "type": "string",
                    "pattern": "^\\d{1,20}$",
                    "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                  },
                  "destinationDocumentType": {
                    "type": "string",
                    "enum": [
                      "CC",
                      "CE",
                      "RUC",
                      "PAS",
                      "PAR",
                      "LMI",
                      "OTHER"
                    ],
                    "description": "Recipient identification type"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 50,
                    "description": "Recipient identification number (max 50)"
                  },
                  "email": {
                    "type": "string",
                    "pattern": "^.+@.+\\..+$",
                    "description": "Recipient email (required for PEN payouts)"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "pattern": "^\\d{1,9}$",
                    "description": "Recipient phone number (required, max 9 digits)"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_PEN"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankCode",
                  "destinationBankAccountNumber",
                  "destinationBankAccountType",
                  "destinationCCI",
                  "destinationDocumentType",
                  "destinationTaxId",
                  "email",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Peruvian bank deposit details (bank-code payout corridor).",
                "title": "Bank Deposit PEN"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_NG"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Nigeria bank deposit details",
                "title": "Bank Deposit NG"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_KE"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Kenya bank deposit details",
                "title": "Bank Deposit KE"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_GH"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit GH",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_ZA"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "South Africa bank deposit details",
                "title": "Bank Deposit ZA"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_TZ"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Tanzania bank deposit details",
                "title": "Bank Deposit TZ"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_UG"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Uganda bank deposit details",
                "title": "Bank Deposit UG"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_RW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Rwanda bank deposit details",
                "title": "Bank Deposit RW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_MW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Malawi bank deposit details",
                "title": "Bank Deposit MW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_ZM"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Zambia bank deposit details",
                "title": "Bank Deposit ZM"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_BW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Botswana bank deposit details",
                "title": "Bank Deposit BW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_CD"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Bank Deposit CD",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_XOF"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "West African CFA bank deposit details",
                "title": "Bank Deposit XOF"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankAccount": {
                    "type": "string",
                    "description": "Bank account"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationBankName is given)"
                  },
                  "destinationBankName": {
                    "type": "string",
                    "description": "Bank name (used to resolve the network when id is omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_XAF"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccount",
                  "type"
                ],
                "description": "Central African CFA bank deposit details",
                "title": "Bank Deposit XAF"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_NG"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Nigeria mobile money details",
                "title": "Mobile Money NG"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_KE"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Kenya mobile money details",
                "title": "Mobile Money KE"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_GH"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Mobile Money GH",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_ZA"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "South Africa mobile money details",
                "title": "Mobile Money ZA"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_TZ"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Tanzania mobile money details",
                "title": "Mobile Money TZ"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_UG"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Uganda mobile money details",
                "title": "Mobile Money UG"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_RW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Rwanda mobile money details",
                "title": "Mobile Money RW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_MW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Malawi mobile money details",
                "title": "Mobile Money MW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_ZM"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Zambia mobile money details",
                "title": "Mobile Money ZM"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_BW"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Botswana mobile money details",
                "title": "Mobile Money BW"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_CD"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "Mobile Money CD",
                "deprecated": true
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_XOF"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "West African CFA mobile money details",
                "title": "Mobile Money XOF"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPhoneNumber": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "destinationNetworkId": {
                    "type": "string",
                    "description": "Payout network id (optional if destinationNetworkName is given)"
                  },
                  "destinationNetworkName": {
                    "type": "string",
                    "description": "Mobile money network name (resolves the network when id omitted)"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166 country code"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "MOBILE_MONEY_XAF"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPhoneNumber",
                  "type"
                ],
                "description": "Central African CFA mobile money details",
                "title": "Mobile Money XAF"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationBankCode": {
                    "type": "string",
                    "description": "Bank code"
                  },
                  "destinationBankAccountNumber": {
                    "type": "string",
                    "description": "Bank account number (18-digit CLABE)"
                  },
                  "numericReference": {
                    "type": "string",
                    "description": "Numeric reference"
                  },
                  "notesReference": {
                    "type": "string",
                    "description": "Notes reference"
                  },
                  "destinationClabe": {
                    "type": "string",
                    "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                  },
                  "destinationTaxId": {
                    "type": "string",
                    "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "BANK_DEPOSIT_MX"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationBankAccountNumber",
                  "type"
                ],
                "description": "Mexican bank deposit details",
                "title": "Bank Deposit MX"
              },
              {
                "type": "object",
                "properties": {
                  "destinationName": {
                    "type": "string",
                    "description": "Name of the recipient"
                  },
                  "destinationPseNumber": {
                    "type": "string",
                    "description": "PSE number"
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "PSE"
                    ]
                  }
                },
                "required": [
                  "destinationName",
                  "destinationPseNumber",
                  "type"
                ],
                "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                "title": "PSE",
                "deprecated": true
              }
            ],
            "description": "Detailed withdrawal information",
            "title": "WithdrawalInfo"
          },
          "source": {
            "type": "string",
            "enum": [
              "ui",
              "apiApp",
              "externalApi",
              "internal"
            ],
            "description": "Source of withdrawal creation",
            "example": "externalApi"
          },
          "requires2FA": {
            "type": "boolean",
            "description": "Whether 2FA is required for this withdrawal",
            "example": false
          },
          "twoFactorToken": {
            "type": "string",
            "description": "2FA token for email approval",
            "example": "abc123"
          },
          "twoFactorApprovedAt": {
            "type": "number",
            "description": "Timestamp when 2FA was approved",
            "example": 1723027132
          },
          "errorCode": {
            "type": "string",
            "description": "Error code when status is Review",
            "example": "INSUFFICIENT_BALANCE"
          },
          "errorDetails": {
            "type": "string",
            "description": "Detailed error information",
            "example": "Insufficient balance for withdrawal"
          },
          "reviewedBy": {
            "type": "string",
            "description": "Admin email who reviewed the withdrawal",
            "example": "admin@example.com"
          },
          "reviewedAt": {
            "type": "number",
            "description": "Timestamp when review happened",
            "example": 1723027132
          }
        },
        "required": [
          "withdrawalId",
          "createdAt",
          "amount",
          "currency",
          "fee",
          "feeCurrency",
          "status"
        ],
        "description": "Response schema for getting withdrawal details"
      },
      "ListWithdrawalsRequest": {
        "type": "object",
        "properties": {
          "currency": {
            "type": "string",
            "description": "Optional currency code to filter the items",
            "example": "EUR"
          },
          "minAmount": {
            "type": "number",
            "minimum": 0
          },
          "maxAmount": {
            "type": "number",
            "minimum": 0
          },
          "from": {
            "type": "integer",
            "minimum": 0
          },
          "to": {
            "type": "integer",
            "minimum": 0
          },
          "userEmail": {
            "type": "string",
            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
            "description": "Email of the user making the request. For a business payer this matches operations under any of its identities — the representative email and the organisation account — so listings stay complete across both.",
            "example": "user@example.com"
          },
          "search": {
            "type": "string",
            "description": "General search (e.g. email or text). When provided, backend may use it for userEmail or text search."
          },
          "limit": {
            "type": "number",
            "minimum": 0
          },
          "page": {
            "type": "number",
            "minimum": 0
          },
          "status": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "Pending",
                  "Processing",
                  "Success",
                  "Failed",
                  "Canceled",
                  "Reviewing"
                ],
                "description": "Common status values that are shared across all operation types",
                "examples": [
                  "Pending",
                  "Processing",
                  "Success",
                  "Failed",
                  "Canceled",
                  "Reviewing"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "PendingCancel",
                  "PendingWithdrawal",
                  "PendingVerification",
                  "Pending2FA",
                  "Compliance",
                  "Accepted",
                  "Approved",
                  "Rejected",
                  "Review"
                ]
              },
              {
                "type": "array",
                "items": {
                  "anyOf": [
                    {
                      "type": "string",
                      "enum": [
                        "Pending",
                        "Processing",
                        "Success",
                        "Failed",
                        "Canceled",
                        "Reviewing"
                      ],
                      "description": "Common status values that are shared across all operation types",
                      "examples": [
                        "Pending",
                        "Processing",
                        "Success",
                        "Failed",
                        "Canceled",
                        "Reviewing"
                      ]
                    },
                    {
                      "type": "string",
                      "enum": [
                        "PendingCancel",
                        "PendingWithdrawal",
                        "PendingVerification",
                        "Pending2FA",
                        "Compliance",
                        "Accepted",
                        "Approved",
                        "Rejected",
                        "Review"
                      ]
                    }
                  ],
                  "description": "Status for withdrawal operations",
                  "examples": [
                    "Pending",
                    "Pending2FA",
                    "Compliance",
                    "Accepted",
                    "Approved",
                    "Success",
                    "Failed",
                    "Review",
                    "Rejected"
                  ]
                }
              }
            ],
            "description": "Optional status to filter withdrawals. Can be a single status or an array of statuses for multiple filtering",
            "examples": [
              "Pending",
              [
                "Pending",
                "Success"
              ],
              [
                "Pending",
                "Processing",
                "Success"
              ]
            ]
          },
          "network": {
            "type": "string",
            "description": "Network filter for the withdrawals in case of crypto withdrawals",
            "examples": [
              "Ethereum"
            ]
          }
        },
        "additionalProperties": false,
        "description": "Request schema for listing withdrawals"
      },
      "ListWithdrawalsResponse": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "withdrawalId": {
              "anyOf": [
                {
                  "type": "string",
                  "minLength": 12,
                  "maxLength": 12,
                  "pattern": "^[A-Z0-9]{12}$",
                  "examples": [
                    "01CLFXMT67II",
                    "2R7E5Y5KFXP8",
                    "4FWWRE3Y2URM"
                  ]
                },
                {
                  "type": "string",
                  "format": "uuid"
                }
              ],
              "description": "ID of the withdrawal"
            },
            "userData": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "userType": {
                      "type": "string",
                      "enum": [
                        "individual"
                      ]
                    },
                    "firstName": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 50,
                      "description": "First name of the user making the deposit (or representative for business)",
                      "examples": [
                        "John",
                        "Alice",
                        "Bob"
                      ]
                    },
                    "lastName": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 100,
                      "description": "Last name of the user making the deposit (or representative for business)",
                      "examples": [
                        "Doe",
                        "Smith",
                        "Johnson"
                      ]
                    },
                    "userEmail": {
                      "type": "string",
                      "maxLength": 254,
                      "format": "email",
                      "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                      "description": "Email of the user making the deposit",
                      "examples": [
                        "user@virtuabroker.com",
                        "john.doe@example.com",
                        "alice@example.com"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "maxLength": 150,
                      "description": "Address of the user making the deposit",
                      "examples": [
                        "123 Main St, Anytown, ES",
                        "456 Elm St, Anytown, ES",
                        "789 Oak St, Anytown, ES"
                      ]
                    },
                    "taxDocumentType": {
                      "type": "string",
                      "maxLength": 50,
                      "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                      "examples": [
                        "CC",
                        "NIT",
                        "CE",
                        "NIF",
                        "Other"
                      ]
                    },
                    "taxId": {
                      "type": "string",
                      "maxLength": 30,
                      "description": "Tax ID of the user making the deposit",
                      "examples": [
                        "123-45-6789",
                        "987-65-4321",
                        "111-22-3333"
                      ]
                    },
                    "country": {
                      "type": "string",
                      "enum": [
                        "US",
                        "CA",
                        "GB",
                        "DE",
                        "FR",
                        "AU",
                        "JP",
                        "KR",
                        "SE",
                        "NO",
                        "DK",
                        "FI",
                        "NL",
                        "BE",
                        "CH",
                        "AT",
                        "NZ",
                        "SG",
                        "IE",
                        "LU",
                        "PT",
                        "ES",
                        "IT",
                        "GR",
                        "CZ",
                        "PL",
                        "HU",
                        "SK",
                        "SI",
                        "EE",
                        "LT",
                        "LV",
                        "IS",
                        "MT",
                        "CY",
                        "HR",
                        "RO",
                        "BG",
                        "BR",
                        "AR",
                        "CL",
                        "MX",
                        "CO",
                        "PE",
                        "PA",
                        "UY",
                        "BO",
                        "ZA",
                        "NG",
                        "KE",
                        "GH",
                        "TZ",
                        "UG",
                        "RW",
                        "MW",
                        "ZM",
                        "BW",
                        "CD",
                        "CI",
                        "CM",
                        "IL",
                        "AE",
                        "QA",
                        "SA",
                        "OM",
                        "KW",
                        "BH",
                        "MY",
                        "PH",
                        "TH",
                        "VN",
                        "ID",
                        "IN",
                        "LK",
                        "NP",
                        "BD",
                        "PK",
                        "EG",
                        "MA",
                        "DZ",
                        "TN",
                        "JO",
                        "LB",
                        "TR",
                        "KH",
                        "MM",
                        "LA",
                        "EN",
                        "BT",
                        "VE",
                        "TW",
                        "HK",
                        "CN"
                      ],
                      "description": "Country code of the user making the deposit",
                      "examples": [
                        "ES",
                        "US",
                        "GB"
                      ]
                    },
                    "state": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 100,
                      "description": "State of the user making the deposit",
                      "examples": [
                        "Madrid",
                        "New York",
                        "London"
                      ]
                    },
                    "postalCode": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 30,
                      "description": "Postal code of the user making the deposit",
                      "examples": [
                        "12345",
                        "67890",
                        "abcde"
                      ]
                    },
                    "city": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 100,
                      "description": "City of the user making the deposit",
                      "examples": [
                        "Madrid",
                        "New York",
                        "London"
                      ]
                    },
                    "dob": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 30,
                      "description": "Date of birth of the user making the deposit",
                      "examples": [
                        "1990-01-01",
                        "1995-05-15",
                        "1988-12-31"
                      ]
                    },
                    "phoneNumber": {
                      "type": "string",
                      "maxLength": 30,
                      "description": "Phone number of the user making the deposit",
                      "examples": [
                        "+447700900123",
                        "+447700900456",
                        "+447700900789"
                      ]
                    },
                    "kycId": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 300,
                      "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                      "examples": [
                        "kyc-12345",
                        "kyc-67890",
                        "kyc-abcde"
                      ]
                    },
                    "activity": {
                      "type": "string",
                      "description": "Activity of the user making the deposit",
                      "examples": [
                        "worker",
                        "business",
                        "student"
                      ]
                    }
                  },
                  "required": [
                    "userType",
                    "firstName",
                    "userEmail",
                    "country"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "userType": {
                      "type": "string",
                      "enum": [
                        "business"
                      ]
                    },
                    "businessName": {
                      "type": "string",
                      "maxLength": 150,
                      "description": "Business name (required when userType is business)",
                      "examples": [
                        "Acme Corp",
                        "Tech Solutions Inc",
                        "Global Services Ltd"
                      ]
                    },
                    "firstName": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 50,
                      "description": "First name of the user making the deposit (or representative for business)",
                      "examples": [
                        "John",
                        "Alice",
                        "Bob"
                      ]
                    },
                    "userEmail": {
                      "type": "string",
                      "maxLength": 254,
                      "format": "email",
                      "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                      "description": "Email of the user making the deposit",
                      "examples": [
                        "user@virtuabroker.com",
                        "john.doe@example.com",
                        "alice@example.com"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "maxLength": 150,
                      "description": "Address of the user making the deposit",
                      "examples": [
                        "123 Main St, Anytown, ES",
                        "456 Elm St, Anytown, ES",
                        "789 Oak St, Anytown, ES"
                      ]
                    },
                    "taxDocumentType": {
                      "type": "string",
                      "maxLength": 50,
                      "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                      "examples": [
                        "CC",
                        "NIT",
                        "CE",
                        "NIF",
                        "Other"
                      ]
                    },
                    "taxId": {
                      "type": "string",
                      "maxLength": 30,
                      "description": "Tax ID of the user making the deposit",
                      "examples": [
                        "123-45-6789",
                        "987-65-4321",
                        "111-22-3333"
                      ]
                    },
                    "country": {
                      "type": "string",
                      "enum": [
                        "US",
                        "CA",
                        "GB",
                        "DE",
                        "FR",
                        "AU",
                        "JP",
                        "KR",
                        "SE",
                        "NO",
                        "DK",
                        "FI",
                        "NL",
                        "BE",
                        "CH",
                        "AT",
                        "NZ",
                        "SG",
                        "IE",
                        "LU",
                        "PT",
                        "ES",
                        "IT",
                        "GR",
                        "CZ",
                        "PL",
                        "HU",
                        "SK",
                        "SI",
                        "EE",
                        "LT",
                        "LV",
                        "IS",
                        "MT",
                        "CY",
                        "HR",
                        "RO",
                        "BG",
                        "BR",
                        "AR",
                        "CL",
                        "MX",
                        "CO",
                        "PE",
                        "PA",
                        "UY",
                        "BO",
                        "ZA",
                        "NG",
                        "KE",
                        "GH",
                        "TZ",
                        "UG",
                        "RW",
                        "MW",
                        "ZM",
                        "BW",
                        "CD",
                        "CI",
                        "CM",
                        "IL",
                        "AE",
                        "QA",
                        "SA",
                        "OM",
                        "KW",
                        "BH",
                        "MY",
                        "PH",
                        "TH",
                        "VN",
                        "ID",
                        "IN",
                        "LK",
                        "NP",
                        "BD",
                        "PK",
                        "EG",
                        "MA",
                        "DZ",
                        "TN",
                        "JO",
                        "LB",
                        "TR",
                        "KH",
                        "MM",
                        "LA",
                        "EN",
                        "BT",
                        "VE",
                        "TW",
                        "HK",
                        "CN"
                      ],
                      "description": "Country code of the user making the deposit",
                      "examples": [
                        "ES",
                        "US",
                        "GB"
                      ]
                    },
                    "state": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 100,
                      "description": "State of the user making the deposit",
                      "examples": [
                        "Madrid",
                        "New York",
                        "London"
                      ]
                    },
                    "postalCode": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 30,
                      "description": "Postal code of the user making the deposit",
                      "examples": [
                        "12345",
                        "67890",
                        "abcde"
                      ]
                    },
                    "city": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 100,
                      "description": "City of the user making the deposit",
                      "examples": [
                        "Madrid",
                        "New York",
                        "London"
                      ]
                    },
                    "dob": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 30,
                      "description": "Date of birth of the user making the deposit",
                      "examples": [
                        "1990-01-01",
                        "1995-05-15",
                        "1988-12-31"
                      ]
                    },
                    "phoneNumber": {
                      "type": "string",
                      "maxLength": 30,
                      "description": "Phone number of the user making the deposit",
                      "examples": [
                        "+447700900123",
                        "+447700900456",
                        "+447700900789"
                      ]
                    },
                    "kycId": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 300,
                      "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                      "examples": [
                        "kyc-12345",
                        "kyc-67890",
                        "kyc-abcde"
                      ]
                    },
                    "activity": {
                      "type": "string",
                      "description": "Activity of the user making the deposit",
                      "examples": [
                        "worker",
                        "business",
                        "student"
                      ]
                    }
                  },
                  "required": [
                    "userType",
                    "businessName",
                    "firstName",
                    "userEmail",
                    "country"
                  ]
                }
              ],
              "description": "User data for the withdrawal"
            },
            "createdAt": {
              "type": "number",
              "description": "Creation time of the withdrawal",
              "example": 1723027132
            },
            "updatedAt": {
              "type": "number",
              "description": "Last update time of the withdrawal",
              "example": 1723027132
            },
            "userEmail": {
              "type": "string",
              "format": "email",
              "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
              "description": "Email of the user making the request",
              "example": "user@example.com"
            },
            "amount": {
              "type": "number",
              "description": "Amount to be withdrawn. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
              "example": 1000
            },
            "currency": {
              "type": "string",
              "description": "Currency of the withdrawal",
              "example": "EUR"
            },
            "fee": {
              "type": "number",
              "description": "Fee for the withdrawal. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
              "example": 10
            },
            "feeCurrency": {
              "type": "string",
              "description": "Currency of the fee",
              "example": "EUR"
            },
            "destinationTransferData": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "BALANCE"
                      ]
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "Balance transfer details",
                  "title": "Balance"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "iban": {
                      "type": "string",
                      "description": "IBAN number"
                    },
                    "bic": {
                      "type": "string",
                      "description": "BIC number (optional)"
                    },
                    "country": {
                      "type": "string",
                      "description": "Country code"
                    },
                    "accountType": {
                      "type": "string",
                      "enum": [
                        "PERSONAL",
                        "BUSINESS"
                      ],
                      "default": "PERSONAL",
                      "description": "Account type (optional)"
                    },
                    "city": {
                      "type": "string",
                      "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                    },
                    "postalCode": {
                      "type": "string",
                      "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                    },
                    "address": {
                      "type": "string",
                      "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "SEPA"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "iban",
                    "country",
                    "type"
                  ],
                  "description": "SEPA transfer details",
                  "title": "SEPA"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "UK bank account number"
                    },
                    "sortCode": {
                      "type": "string",
                      "description": "UK sort code"
                    },
                    "country": {
                      "type": "string",
                      "enum": [
                        "GB"
                      ],
                      "default": "GB",
                      "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                    },
                    "accountType": {
                      "type": "string",
                      "enum": [
                        "PERSONAL",
                        "BUSINESS"
                      ],
                      "default": "PERSONAL",
                      "description": "Account type (optional)"
                    },
                    "city": {
                      "type": "string",
                      "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                    },
                    "postalCode": {
                      "type": "string",
                      "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                    },
                    "address": {
                      "type": "string",
                      "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "GBP_BANK_TRANSFER"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "accountNumber",
                    "sortCode",
                    "type"
                  ],
                  "description": "GBP domestic bank transfer details",
                  "title": "BankDepositGB"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "US bank account number"
                    },
                    "routingNumber": {
                      "type": "string",
                      "description": "US ABA routing number"
                    },
                    "country": {
                      "type": "string",
                      "enum": [
                        "US"
                      ],
                      "default": "US",
                      "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                    },
                    "accountType": {
                      "type": "string",
                      "enum": [
                        "PERSONAL",
                        "BUSINESS"
                      ],
                      "default": "PERSONAL",
                      "description": "Account type (optional)"
                    },
                    "bankAccountType": {
                      "type": "string",
                      "enum": [
                        "CHECKING",
                        "SAVINGS"
                      ],
                      "default": "CHECKING",
                      "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                    },
                    "city": {
                      "type": "string",
                      "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                    },
                    "postalCode": {
                      "type": "string",
                      "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                    },
                    "state": {
                      "type": "string",
                      "pattern": "^[A-Z]{2}$",
                      "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                    },
                    "address": {
                      "type": "string",
                      "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "ACH_US"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "accountNumber",
                    "routingNumber",
                    "state",
                    "type"
                  ],
                  "description": "USD ACH transfer details",
                  "title": "AchUS"
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "linkedBankAccount"
                      ]
                    },
                    "accountLinkId": {
                      "type": "string",
                      "pattern": "^alnk_[0-9a-f]{24}$",
                      "description": "Identifier of one of the account holder own linked bank accounts",
                      "examples": [
                        "alnk_0123456789abcdef01234567"
                      ]
                    }
                  },
                  "required": [
                    "type",
                    "accountLinkId"
                  ],
                  "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                  "title": "LinkedBankAccount",
                  "deprecated": true
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "ETH"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                    },
                    "memo": {
                      "type": "string",
                      "description": "Memo for the wallet, when the chain uses one"
                    },
                    "txId": {
                      "type": "string",
                      "description": "Blockchain transaction ID"
                    },
                    "txUrlScan": {
                      "type": "string",
                      "description": "Blockchain explorer URL for the transaction"
                    },
                    "destinationWalletAddress": {
                      "type": "string",
                      "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                    },
                    "destinationWalletMemo": {
                      "type": "string",
                      "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                    },
                    "destinationCurrencySymbol": {
                      "type": "string",
                      "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "ETH destination details",
                  "anyOf": [
                    {
                      "required": [
                        "address"
                      ],
                      "properties": {
                        "address": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    },
                    {
                      "required": [
                        "destinationWalletAddress"
                      ],
                      "properties": {
                        "destinationWalletAddress": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    }
                  ],
                  "title": "ETH"
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "MATIC"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                    },
                    "memo": {
                      "type": "string",
                      "description": "Memo for the wallet, when the chain uses one"
                    },
                    "txId": {
                      "type": "string",
                      "description": "Blockchain transaction ID"
                    },
                    "txUrlScan": {
                      "type": "string",
                      "description": "Blockchain explorer URL for the transaction"
                    },
                    "destinationWalletAddress": {
                      "type": "string",
                      "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                    },
                    "destinationWalletMemo": {
                      "type": "string",
                      "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                    },
                    "destinationCurrencySymbol": {
                      "type": "string",
                      "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "MATIC destination details",
                  "anyOf": [
                    {
                      "required": [
                        "address"
                      ],
                      "properties": {
                        "address": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    },
                    {
                      "required": [
                        "destinationWalletAddress"
                      ],
                      "properties": {
                        "destinationWalletAddress": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    }
                  ],
                  "title": "MATIC"
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "SOL"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                    },
                    "memo": {
                      "type": "string",
                      "description": "Memo for the wallet, when the chain uses one"
                    },
                    "txId": {
                      "type": "string",
                      "description": "Blockchain transaction ID"
                    },
                    "txUrlScan": {
                      "type": "string",
                      "description": "Blockchain explorer URL for the transaction"
                    },
                    "destinationWalletAddress": {
                      "type": "string",
                      "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                    },
                    "destinationWalletMemo": {
                      "type": "string",
                      "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                    },
                    "destinationCurrencySymbol": {
                      "type": "string",
                      "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "SOL destination details",
                  "anyOf": [
                    {
                      "required": [
                        "address"
                      ],
                      "properties": {
                        "address": {
                          "pattern": "\\S"
                        }
                      }
                    },
                    {
                      "required": [
                        "destinationWalletAddress"
                      ],
                      "properties": {
                        "destinationWalletAddress": {
                          "pattern": "\\S"
                        }
                      }
                    }
                  ],
                  "title": "SOL"
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "TRON"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                    },
                    "memo": {
                      "type": "string",
                      "description": "Memo for the wallet, when the chain uses one"
                    },
                    "txId": {
                      "type": "string",
                      "description": "Blockchain transaction ID"
                    },
                    "txUrlScan": {
                      "type": "string",
                      "description": "Blockchain explorer URL for the transaction"
                    },
                    "destinationWalletAddress": {
                      "type": "string",
                      "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                    },
                    "destinationWalletMemo": {
                      "type": "string",
                      "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                    },
                    "destinationCurrencySymbol": {
                      "type": "string",
                      "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "TRON destination details",
                  "anyOf": [
                    {
                      "required": [
                        "address"
                      ],
                      "properties": {
                        "address": {
                          "pattern": "\\S"
                        }
                      }
                    },
                    {
                      "required": [
                        "destinationWalletAddress"
                      ],
                      "properties": {
                        "destinationWalletAddress": {
                          "pattern": "\\S"
                        }
                      }
                    }
                  ],
                  "title": "TRON"
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "CELO"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                    },
                    "memo": {
                      "type": "string",
                      "description": "Memo for the wallet, when the chain uses one"
                    },
                    "txId": {
                      "type": "string",
                      "description": "Blockchain transaction ID"
                    },
                    "txUrlScan": {
                      "type": "string",
                      "description": "Blockchain explorer URL for the transaction"
                    },
                    "destinationWalletAddress": {
                      "type": "string",
                      "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                    },
                    "destinationWalletMemo": {
                      "type": "string",
                      "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                    },
                    "destinationCurrencySymbol": {
                      "type": "string",
                      "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "CELO destination details",
                  "anyOf": [
                    {
                      "required": [
                        "address"
                      ],
                      "properties": {
                        "address": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    },
                    {
                      "required": [
                        "destinationWalletAddress"
                      ],
                      "properties": {
                        "destinationWalletAddress": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    }
                  ],
                  "title": "CELO"
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "BTC"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                    },
                    "memo": {
                      "type": "string",
                      "description": "Memo for the wallet, when the chain uses one"
                    },
                    "txId": {
                      "type": "string",
                      "description": "Blockchain transaction ID"
                    },
                    "txUrlScan": {
                      "type": "string",
                      "description": "Blockchain explorer URL for the transaction"
                    },
                    "destinationWalletAddress": {
                      "type": "string",
                      "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                    },
                    "destinationWalletMemo": {
                      "type": "string",
                      "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                    },
                    "destinationCurrencySymbol": {
                      "type": "string",
                      "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "BTC destination details",
                  "anyOf": [
                    {
                      "required": [
                        "address"
                      ],
                      "properties": {
                        "address": {
                          "pattern": "\\S"
                        }
                      }
                    },
                    {
                      "required": [
                        "destinationWalletAddress"
                      ],
                      "properties": {
                        "destinationWalletAddress": {
                          "pattern": "\\S"
                        }
                      }
                    }
                  ],
                  "title": "BTC"
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "SOLANA"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                    },
                    "memo": {
                      "type": "string",
                      "description": "Memo for the wallet, when the chain uses one"
                    },
                    "txId": {
                      "type": "string",
                      "description": "Blockchain transaction ID"
                    },
                    "txUrlScan": {
                      "type": "string",
                      "description": "Blockchain explorer URL for the transaction"
                    },
                    "destinationWalletAddress": {
                      "type": "string",
                      "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                    },
                    "destinationWalletMemo": {
                      "type": "string",
                      "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                    },
                    "destinationCurrencySymbol": {
                      "type": "string",
                      "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "SOLANA destination details",
                  "anyOf": [
                    {
                      "required": [
                        "address"
                      ],
                      "properties": {
                        "address": {
                          "pattern": "\\S"
                        }
                      }
                    },
                    {
                      "required": [
                        "destinationWalletAddress"
                      ],
                      "properties": {
                        "destinationWalletAddress": {
                          "pattern": "\\S"
                        }
                      }
                    }
                  ],
                  "title": "SOLANA"
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "XRP"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                    },
                    "memo": {
                      "type": "string",
                      "description": "Memo for the wallet, when the chain uses one"
                    },
                    "txId": {
                      "type": "string",
                      "description": "Blockchain transaction ID"
                    },
                    "txUrlScan": {
                      "type": "string",
                      "description": "Blockchain explorer URL for the transaction"
                    },
                    "destinationWalletAddress": {
                      "type": "string",
                      "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                    },
                    "destinationWalletMemo": {
                      "type": "string",
                      "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                    },
                    "destinationCurrencySymbol": {
                      "type": "string",
                      "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "XRP destination details",
                  "anyOf": [
                    {
                      "required": [
                        "address"
                      ],
                      "properties": {
                        "address": {
                          "pattern": "\\S"
                        }
                      }
                    },
                    {
                      "required": [
                        "destinationWalletAddress"
                      ],
                      "properties": {
                        "destinationWalletAddress": {
                          "pattern": "\\S"
                        }
                      }
                    }
                  ],
                  "title": "XRP"
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "CARDANO"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                    },
                    "memo": {
                      "type": "string",
                      "description": "Memo for the wallet, when the chain uses one"
                    },
                    "txId": {
                      "type": "string",
                      "description": "Blockchain transaction ID"
                    },
                    "txUrlScan": {
                      "type": "string",
                      "description": "Blockchain explorer URL for the transaction"
                    },
                    "destinationWalletAddress": {
                      "type": "string",
                      "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                    },
                    "destinationWalletMemo": {
                      "type": "string",
                      "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                    },
                    "destinationCurrencySymbol": {
                      "type": "string",
                      "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "CARDANO destination details",
                  "anyOf": [
                    {
                      "required": [
                        "address"
                      ],
                      "properties": {
                        "address": {
                          "pattern": "\\S"
                        }
                      }
                    },
                    {
                      "required": [
                        "destinationWalletAddress"
                      ],
                      "properties": {
                        "destinationWalletAddress": {
                          "pattern": "\\S"
                        }
                      }
                    }
                  ],
                  "title": "CARDANO"
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "BSC"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                    },
                    "memo": {
                      "type": "string",
                      "description": "Memo for the wallet, when the chain uses one"
                    },
                    "txId": {
                      "type": "string",
                      "description": "Blockchain transaction ID"
                    },
                    "txUrlScan": {
                      "type": "string",
                      "description": "Blockchain explorer URL for the transaction"
                    },
                    "destinationWalletAddress": {
                      "type": "string",
                      "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                    },
                    "destinationWalletMemo": {
                      "type": "string",
                      "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                    },
                    "destinationCurrencySymbol": {
                      "type": "string",
                      "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "BSC destination details",
                  "anyOf": [
                    {
                      "required": [
                        "address"
                      ],
                      "properties": {
                        "address": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    },
                    {
                      "required": [
                        "destinationWalletAddress"
                      ],
                      "properties": {
                        "destinationWalletAddress": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    }
                  ],
                  "title": "BSC"
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "ARBITRUM"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                    },
                    "memo": {
                      "type": "string",
                      "description": "Memo for the wallet, when the chain uses one"
                    },
                    "txId": {
                      "type": "string",
                      "description": "Blockchain transaction ID"
                    },
                    "txUrlScan": {
                      "type": "string",
                      "description": "Blockchain explorer URL for the transaction"
                    },
                    "destinationWalletAddress": {
                      "type": "string",
                      "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                    },
                    "destinationWalletMemo": {
                      "type": "string",
                      "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                    },
                    "destinationCurrencySymbol": {
                      "type": "string",
                      "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "ARBITRUM destination details",
                  "anyOf": [
                    {
                      "required": [
                        "address"
                      ],
                      "properties": {
                        "address": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    },
                    {
                      "required": [
                        "destinationWalletAddress"
                      ],
                      "properties": {
                        "destinationWalletAddress": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    }
                  ],
                  "title": "ARBITRUM"
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "OPTIMISM"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                    },
                    "memo": {
                      "type": "string",
                      "description": "Memo for the wallet, when the chain uses one"
                    },
                    "txId": {
                      "type": "string",
                      "description": "Blockchain transaction ID"
                    },
                    "txUrlScan": {
                      "type": "string",
                      "description": "Blockchain explorer URL for the transaction"
                    },
                    "destinationWalletAddress": {
                      "type": "string",
                      "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                    },
                    "destinationWalletMemo": {
                      "type": "string",
                      "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                    },
                    "destinationCurrencySymbol": {
                      "type": "string",
                      "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "OPTIMISM destination details",
                  "anyOf": [
                    {
                      "required": [
                        "address"
                      ],
                      "properties": {
                        "address": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    },
                    {
                      "required": [
                        "destinationWalletAddress"
                      ],
                      "properties": {
                        "destinationWalletAddress": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    }
                  ],
                  "title": "OPTIMISM"
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "AVALANCHE"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                    },
                    "memo": {
                      "type": "string",
                      "description": "Memo for the wallet, when the chain uses one"
                    },
                    "txId": {
                      "type": "string",
                      "description": "Blockchain transaction ID"
                    },
                    "txUrlScan": {
                      "type": "string",
                      "description": "Blockchain explorer URL for the transaction"
                    },
                    "destinationWalletAddress": {
                      "type": "string",
                      "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                    },
                    "destinationWalletMemo": {
                      "type": "string",
                      "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                    },
                    "destinationCurrencySymbol": {
                      "type": "string",
                      "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "AVALANCHE destination details",
                  "anyOf": [
                    {
                      "required": [
                        "address"
                      ],
                      "properties": {
                        "address": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    },
                    {
                      "required": [
                        "destinationWalletAddress"
                      ],
                      "properties": {
                        "destinationWalletAddress": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    }
                  ],
                  "title": "AVALANCHE"
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "BASE"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                    },
                    "memo": {
                      "type": "string",
                      "description": "Memo for the wallet, when the chain uses one"
                    },
                    "txId": {
                      "type": "string",
                      "description": "Blockchain transaction ID"
                    },
                    "txUrlScan": {
                      "type": "string",
                      "description": "Blockchain explorer URL for the transaction"
                    },
                    "destinationWalletAddress": {
                      "type": "string",
                      "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                    },
                    "destinationWalletMemo": {
                      "type": "string",
                      "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                    },
                    "destinationCurrencySymbol": {
                      "type": "string",
                      "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "BASE destination details",
                  "anyOf": [
                    {
                      "required": [
                        "address"
                      ],
                      "properties": {
                        "address": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    },
                    {
                      "required": [
                        "destinationWalletAddress"
                      ],
                      "properties": {
                        "destinationWalletAddress": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    }
                  ],
                  "title": "BASE"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_COL"
                      ]
                    },
                    "destinationBankCode": {
                      "type": "string",
                      "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                    },
                    "destinationBankAccountType": {
                      "type": "string",
                      "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "description": "Recipient ID document number. Required when creating or updating a destination."
                    },
                    "destinationDocumentType": {
                      "type": "string",
                      "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                  "title": "Bank Deposit COL"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "brebKey": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Bre-B key (llave) that identifies the recipient account"
                    },
                    "email": {
                      "type": "string",
                      "description": "Recipient email (optional contact for the Bre-B rail)"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Recipient phone number (optional contact for the Bre-B rail)"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BRE_B_COP"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "brebKey",
                    "type"
                  ],
                  "description": "Colombian Bre-B payout details",
                  "title": "Bre-B COP"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankCode": {
                      "type": "string",
                      "pattern": "^\\d{4}$",
                      "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                    },
                    "destinationBankAccountNumber": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Recipient bank account number"
                    },
                    "destinationBankAccountType": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                    },
                    "destinationDocumentType": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Recipient ID document number"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "ACH_COP"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankCode",
                    "destinationBankAccountNumber",
                    "destinationBankAccountType",
                    "destinationDocumentType",
                    "destinationTaxId",
                    "type"
                  ],
                  "description": "Colombian ACH payout details",
                  "title": "ACH COP"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (unused for TWD — no network discovery)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "minLength": 2,
                      "description": "Bank name (required — TWD payouts run over SWIFT)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_TW"
                      ]
                    },
                    "destinationBankBranch": {
                      "type": "string",
                      "minLength": 2,
                      "description": "Bank branch (required — TWD payouts run over SWIFT)"
                    },
                    "bic": {
                      "type": "string",
                      "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                      "description": "SWIFT BIC code (required for TWD payouts)"
                    },
                    "destinationBankAccountType": {
                      "type": "string",
                      "description": "Type of bank account (legacy, optional)"
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "description": "Tax ID of the recipient (legacy, optional)"
                    },
                    "destinationDocumentType": {
                      "type": "string",
                      "description": "Document type of the recipient (legacy, optional)"
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "destinationBankName",
                    "type",
                    "destinationBankBranch",
                    "bic"
                  ],
                  "description": "Taiwan bank deposit details (SWIFT payout)",
                  "title": "Bank Deposit TW"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankCode": {
                      "type": "string",
                      "description": "Bank code"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationBankBranch": {
                      "type": "string",
                      "description": "Bank branch"
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "description": "Tax ID of the recipient"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_BR"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankCode",
                    "destinationBankAccount",
                    "destinationBankBranch",
                    "destinationTaxId",
                    "type"
                  ],
                  "description": "Brazilian bank deposit details",
                  "title": "Bank Deposit BR"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPixCode": {
                      "type": "string",
                      "description": "PIX code"
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "description": "Tax ID of the recipient"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "PIX_BR"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPixCode",
                    "destinationTaxId",
                    "type"
                  ],
                  "description": "Brazilian PIX details",
                  "title": "PIX BR"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccountNumber": {
                      "type": "string",
                      "description": "Bank account number"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Name of the bank"
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                      "description": "Tax ID of the recipient"
                    },
                    "destinationBankAccountType": {
                      "type": "string",
                      "description": "Type of bank account"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_VEN"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccountNumber",
                    "destinationBankName",
                    "destinationTaxId",
                    "destinationBankAccountType",
                    "type"
                  ],
                  "description": "Venezuelan bank deposit details",
                  "title": "Bank Deposit VEN"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankCode": {
                      "type": "string",
                      "description": "Bank code"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                      "description": "Tax ID of the recipient"
                    },
                    "destinationBankAccountType": {
                      "type": "string",
                      "description": "Type of bank account"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "PHONE_DEPOSIT_VEN"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankCode",
                    "destinationPhoneNumber",
                    "destinationTaxId",
                    "destinationBankAccountType",
                    "type"
                  ],
                  "description": "Venezuelan phone deposit details",
                  "title": "Phone Deposit VEN"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationIFSC": {
                      "type": "string",
                      "description": "IFSC code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_IN"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                  "title": "Bank Deposit IN",
                  "deprecated": true
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationIFSC": {
                      "type": "string",
                      "description": "IFSC code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "IMPS"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                  "title": "IMPS",
                  "deprecated": true
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationIFSC": {
                      "type": "string",
                      "description": "IFSC code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "THAI_QR"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                  "title": "Thai QR",
                  "deprecated": true
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationIFSC": {
                      "type": "string",
                      "description": "IFSC code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "VIET_QR"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                  "title": "Viet QR",
                  "deprecated": true
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationIFSC": {
                      "type": "string",
                      "description": "IFSC code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "GCASH"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                  "title": "GCash",
                  "deprecated": true
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "description": "Tax ID"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "MOBILE_PAYMENT_IN"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPhoneNumber",
                    "destinationTaxId",
                    "type"
                  ],
                  "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                  "title": "Mobile Payment IN",
                  "deprecated": true
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationBankCode": {
                      "type": "string",
                      "description": "Bank code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_VN"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "destinationBankCode",
                    "type"
                  ],
                  "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                  "title": "Bank Deposit VN",
                  "deprecated": true
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "bic": {
                      "type": "string",
                      "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "destinationAddress": {
                      "type": "string",
                      "description": "Address line 1 of the recipient"
                    },
                    "destinationCity": {
                      "type": "string",
                      "description": "Recipient city (defaults to Hong Kong)"
                    },
                    "accountHolderName": {
                      "type": "string",
                      "description": "Bank account holder name if different from payee"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_HK"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "bic",
                    "destinationBankName",
                    "destinationAddress",
                    "type"
                  ],
                  "description": "Hong Kong bank deposit details (HKD bank corridor)",
                  "title": "Bank Deposit HK"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationBankCode": {
                      "type": "string",
                      "pattern": "^\\d+$",
                      "description": "CNAPS / bank institution code (numeric, variable length)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "destinationAddress": {
                      "type": "string",
                      "description": "Address line 1 of the recipient"
                    },
                    "destinationCity": {
                      "type": "string",
                      "description": "Recipient city"
                    },
                    "destinationState": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                    },
                    "destinationPostcode": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                    },
                    "destinationPhone": {
                      "type": "string",
                      "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                    },
                    "accountHolderName": {
                      "type": "string",
                      "description": "Bank account holder name if different from payee"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_CN"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "destinationBankCode",
                    "destinationBankName",
                    "destinationAddress",
                    "destinationCity",
                    "destinationState",
                    "destinationPostcode",
                    "type"
                  ],
                  "description": "China mainland bank deposit details (CNY bank corridor)",
                  "title": "Bank Deposit CN"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_AR"
                      ]
                    },
                    "destinationCBU": {
                      "type": "string",
                      "description": "CBU — 22-digit bank account key (legacy, optional)"
                    },
                    "destinationCVU": {
                      "type": "string",
                      "description": "CVU — 22-digit virtual account key (legacy, optional)"
                    },
                    "destinationAlias": {
                      "type": "string",
                      "description": "Account alias (legacy, optional)"
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                    },
                    "destinationDocumentType": {
                      "type": "string",
                      "description": "Document type of the recipient (legacy, optional)"
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Argentinian bank deposit details",
                  "title": "Bank Deposit AR"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationBankName is given)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Recipient bank name (required for Chilean bank payouts)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_CL"
                      ]
                    },
                    "destinationBankAccountType": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "minLength": 1,
                      "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                    },
                    "destinationDocumentType": {
                      "type": "string",
                      "description": "Document type of the recipient (legacy, optional)"
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "destinationBankName",
                    "type",
                    "destinationBankAccountType",
                    "destinationTaxId"
                  ],
                  "description": "Chilean bank deposit details",
                  "title": "Bank Deposit CL"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "minLength": 2,
                      "maxLength": 30,
                      "description": "Recipient name (required, 2–30 characters)"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 11,
                      "description": "Bank account number (max 11 digits for Bolivian accounts)"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (unused for BOB — no network discovery)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "maxLength": 20,
                      "description": "Bank name (optional, max 20 characters)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_BO"
                      ]
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 15,
                      "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type",
                    "destinationTaxId"
                  ],
                  "description": "Bolivian bank deposit details",
                  "title": "Bank Deposit BO"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_PE"
                      ]
                    },
                    "destinationCCI": {
                      "type": "string",
                      "description": "CCI — 20-digit interbank account code (legacy, optional)"
                    },
                    "destinationBankAccountType": {
                      "type": "string",
                      "description": "Account type (corriente/ahorro) (legacy, optional)"
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                    },
                    "destinationDocumentType": {
                      "type": "string",
                      "description": "Document type of the recipient (legacy, optional)"
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "destinationNetworkId",
                    "type"
                  ],
                  "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                  "title": "Bank Deposit PE",
                  "deprecated": true
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankCode": {
                      "type": "string",
                      "pattern": "^\\d{3}$",
                      "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                    },
                    "destinationBankAccountNumber": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 20,
                      "description": "Recipient bank account number (max 20)"
                    },
                    "destinationBankAccountType": {
                      "type": "string",
                      "enum": [
                        "CORRIENTE",
                        "AHORROS",
                        "PHONE"
                      ],
                      "description": "Bank account type"
                    },
                    "destinationCCI": {
                      "type": "string",
                      "pattern": "^\\d{1,20}$",
                      "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                    },
                    "destinationDocumentType": {
                      "type": "string",
                      "enum": [
                        "CC",
                        "CE",
                        "RUC",
                        "PAS",
                        "PAR",
                        "LMI",
                        "OTHER"
                      ],
                      "description": "Recipient identification type"
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 50,
                      "description": "Recipient identification number (max 50)"
                    },
                    "email": {
                      "type": "string",
                      "pattern": "^.+@.+\\..+$",
                      "description": "Recipient email (required for PEN payouts)"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "pattern": "^\\d{1,9}$",
                      "description": "Recipient phone number (required, max 9 digits)"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_PEN"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankCode",
                    "destinationBankAccountNumber",
                    "destinationBankAccountType",
                    "destinationCCI",
                    "destinationDocumentType",
                    "destinationTaxId",
                    "email",
                    "destinationPhoneNumber",
                    "type"
                  ],
                  "description": "Peruvian bank deposit details (bank-code payout corridor).",
                  "title": "Bank Deposit PEN"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationBankName is given)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_NG"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Nigeria bank deposit details",
                  "title": "Bank Deposit NG"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationBankName is given)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_KE"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Kenya bank deposit details",
                  "title": "Bank Deposit KE"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationBankName is given)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_GH"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                  "title": "Bank Deposit GH",
                  "deprecated": true
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationBankName is given)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_ZA"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "South Africa bank deposit details",
                  "title": "Bank Deposit ZA"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationBankName is given)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_TZ"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Tanzania bank deposit details",
                  "title": "Bank Deposit TZ"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationBankName is given)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_UG"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Uganda bank deposit details",
                  "title": "Bank Deposit UG"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationBankName is given)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_RW"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Rwanda bank deposit details",
                  "title": "Bank Deposit RW"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationBankName is given)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_MW"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Malawi bank deposit details",
                  "title": "Bank Deposit MW"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationBankName is given)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_ZM"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Zambia bank deposit details",
                  "title": "Bank Deposit ZM"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationBankName is given)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_BW"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Botswana bank deposit details",
                  "title": "Bank Deposit BW"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationBankName is given)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_CD"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                  "title": "Bank Deposit CD",
                  "deprecated": true
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationBankName is given)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_XOF"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "West African CFA bank deposit details",
                  "title": "Bank Deposit XOF"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationBankName is given)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_XAF"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Central African CFA bank deposit details",
                  "title": "Bank Deposit XAF"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationNetworkName is given)"
                    },
                    "destinationNetworkName": {
                      "type": "string",
                      "description": "Mobile money network name (resolves the network when id omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_NG"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPhoneNumber",
                    "type"
                  ],
                  "description": "Nigeria mobile money details",
                  "title": "Mobile Money NG"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationNetworkName is given)"
                    },
                    "destinationNetworkName": {
                      "type": "string",
                      "description": "Mobile money network name (resolves the network when id omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_KE"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPhoneNumber",
                    "type"
                  ],
                  "description": "Kenya mobile money details",
                  "title": "Mobile Money KE"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationNetworkName is given)"
                    },
                    "destinationNetworkName": {
                      "type": "string",
                      "description": "Mobile money network name (resolves the network when id omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_GH"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPhoneNumber",
                    "type"
                  ],
                  "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                  "title": "Mobile Money GH",
                  "deprecated": true
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationNetworkName is given)"
                    },
                    "destinationNetworkName": {
                      "type": "string",
                      "description": "Mobile money network name (resolves the network when id omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_ZA"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPhoneNumber",
                    "type"
                  ],
                  "description": "South Africa mobile money details",
                  "title": "Mobile Money ZA"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationNetworkName is given)"
                    },
                    "destinationNetworkName": {
                      "type": "string",
                      "description": "Mobile money network name (resolves the network when id omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_TZ"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPhoneNumber",
                    "type"
                  ],
                  "description": "Tanzania mobile money details",
                  "title": "Mobile Money TZ"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationNetworkName is given)"
                    },
                    "destinationNetworkName": {
                      "type": "string",
                      "description": "Mobile money network name (resolves the network when id omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_UG"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPhoneNumber",
                    "type"
                  ],
                  "description": "Uganda mobile money details",
                  "title": "Mobile Money UG"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationNetworkName is given)"
                    },
                    "destinationNetworkName": {
                      "type": "string",
                      "description": "Mobile money network name (resolves the network when id omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_RW"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPhoneNumber",
                    "type"
                  ],
                  "description": "Rwanda mobile money details",
                  "title": "Mobile Money RW"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationNetworkName is given)"
                    },
                    "destinationNetworkName": {
                      "type": "string",
                      "description": "Mobile money network name (resolves the network when id omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_MW"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPhoneNumber",
                    "type"
                  ],
                  "description": "Malawi mobile money details",
                  "title": "Mobile Money MW"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationNetworkName is given)"
                    },
                    "destinationNetworkName": {
                      "type": "string",
                      "description": "Mobile money network name (resolves the network when id omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_ZM"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPhoneNumber",
                    "type"
                  ],
                  "description": "Zambia mobile money details",
                  "title": "Mobile Money ZM"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationNetworkName is given)"
                    },
                    "destinationNetworkName": {
                      "type": "string",
                      "description": "Mobile money network name (resolves the network when id omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_BW"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPhoneNumber",
                    "type"
                  ],
                  "description": "Botswana mobile money details",
                  "title": "Mobile Money BW"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationNetworkName is given)"
                    },
                    "destinationNetworkName": {
                      "type": "string",
                      "description": "Mobile money network name (resolves the network when id omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_CD"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPhoneNumber",
                    "type"
                  ],
                  "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                  "title": "Mobile Money CD",
                  "deprecated": true
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationNetworkName is given)"
                    },
                    "destinationNetworkName": {
                      "type": "string",
                      "description": "Mobile money network name (resolves the network when id omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_XOF"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPhoneNumber",
                    "type"
                  ],
                  "description": "West African CFA mobile money details",
                  "title": "Mobile Money XOF"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationNetworkName is given)"
                    },
                    "destinationNetworkName": {
                      "type": "string",
                      "description": "Mobile money network name (resolves the network when id omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_XAF"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPhoneNumber",
                    "type"
                  ],
                  "description": "Central African CFA mobile money details",
                  "title": "Mobile Money XAF"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankCode": {
                      "type": "string",
                      "description": "Bank code"
                    },
                    "destinationBankAccountNumber": {
                      "type": "string",
                      "description": "Bank account number (18-digit CLABE)"
                    },
                    "numericReference": {
                      "type": "string",
                      "description": "Numeric reference"
                    },
                    "notesReference": {
                      "type": "string",
                      "description": "Notes reference"
                    },
                    "destinationClabe": {
                      "type": "string",
                      "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_MX"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccountNumber",
                    "type"
                  ],
                  "description": "Mexican bank deposit details",
                  "title": "Bank Deposit MX"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPseNumber": {
                      "type": "string",
                      "description": "PSE number"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "PSE"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPseNumber",
                    "type"
                  ],
                  "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                  "title": "PSE",
                  "deprecated": true
                }
              ],
              "description": "The details required for the end user destination transfer method."
            },
            "status": {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "Pending",
                    "Processing",
                    "Success",
                    "Failed",
                    "Canceled",
                    "Reviewing"
                  ],
                  "description": "Common status values that are shared across all operation types",
                  "examples": [
                    "Pending",
                    "Processing",
                    "Success",
                    "Failed",
                    "Canceled",
                    "Reviewing"
                  ]
                },
                {
                  "type": "string",
                  "enum": [
                    "PendingCancel",
                    "PendingWithdrawal",
                    "PendingVerification",
                    "Pending2FA",
                    "Compliance",
                    "Accepted",
                    "Approved",
                    "Rejected",
                    "Review"
                  ]
                }
              ],
              "description": "Status of the withdrawal",
              "examples": [
                "Pending",
                "Pending2FA",
                "Compliance",
                "Accepted",
                "Approved",
                "Success",
                "Failed",
                "Review",
                "Rejected"
              ]
            },
            "withdrawalInfo": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "BALANCE"
                      ]
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "Balance transfer details",
                  "title": "Balance"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "iban": {
                      "type": "string",
                      "description": "IBAN number"
                    },
                    "bic": {
                      "type": "string",
                      "description": "BIC number (optional)"
                    },
                    "country": {
                      "type": "string",
                      "description": "Country code"
                    },
                    "accountType": {
                      "type": "string",
                      "enum": [
                        "PERSONAL",
                        "BUSINESS"
                      ],
                      "default": "PERSONAL",
                      "description": "Account type (optional)"
                    },
                    "city": {
                      "type": "string",
                      "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                    },
                    "postalCode": {
                      "type": "string",
                      "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                    },
                    "address": {
                      "type": "string",
                      "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "SEPA"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "iban",
                    "country",
                    "type"
                  ],
                  "description": "SEPA transfer details",
                  "title": "SEPA"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "UK bank account number"
                    },
                    "sortCode": {
                      "type": "string",
                      "description": "UK sort code"
                    },
                    "country": {
                      "type": "string",
                      "enum": [
                        "GB"
                      ],
                      "default": "GB",
                      "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                    },
                    "accountType": {
                      "type": "string",
                      "enum": [
                        "PERSONAL",
                        "BUSINESS"
                      ],
                      "default": "PERSONAL",
                      "description": "Account type (optional)"
                    },
                    "city": {
                      "type": "string",
                      "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                    },
                    "postalCode": {
                      "type": "string",
                      "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                    },
                    "address": {
                      "type": "string",
                      "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "GBP_BANK_TRANSFER"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "accountNumber",
                    "sortCode",
                    "type"
                  ],
                  "description": "GBP domestic bank transfer details",
                  "title": "BankDepositGB"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "accountNumber": {
                      "type": "string",
                      "description": "US bank account number"
                    },
                    "routingNumber": {
                      "type": "string",
                      "description": "US ABA routing number"
                    },
                    "country": {
                      "type": "string",
                      "enum": [
                        "US"
                      ],
                      "default": "US",
                      "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                    },
                    "accountType": {
                      "type": "string",
                      "enum": [
                        "PERSONAL",
                        "BUSINESS"
                      ],
                      "default": "PERSONAL",
                      "description": "Account type (optional)"
                    },
                    "bankAccountType": {
                      "type": "string",
                      "enum": [
                        "CHECKING",
                        "SAVINGS"
                      ],
                      "default": "CHECKING",
                      "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                    },
                    "city": {
                      "type": "string",
                      "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                    },
                    "postalCode": {
                      "type": "string",
                      "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                    },
                    "state": {
                      "type": "string",
                      "pattern": "^[A-Z]{2}$",
                      "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                    },
                    "address": {
                      "type": "string",
                      "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "ACH_US"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "accountNumber",
                    "routingNumber",
                    "state",
                    "type"
                  ],
                  "description": "USD ACH transfer details",
                  "title": "AchUS"
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "linkedBankAccount"
                      ]
                    },
                    "accountLinkId": {
                      "type": "string",
                      "pattern": "^alnk_[0-9a-f]{24}$",
                      "description": "Identifier of one of the account holder own linked bank accounts",
                      "examples": [
                        "alnk_0123456789abcdef01234567"
                      ]
                    }
                  },
                  "required": [
                    "type",
                    "accountLinkId"
                  ],
                  "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                  "title": "LinkedBankAccount",
                  "deprecated": true
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "ETH"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                    },
                    "memo": {
                      "type": "string",
                      "description": "Memo for the wallet, when the chain uses one"
                    },
                    "txId": {
                      "type": "string",
                      "description": "Blockchain transaction ID"
                    },
                    "txUrlScan": {
                      "type": "string",
                      "description": "Blockchain explorer URL for the transaction"
                    },
                    "destinationWalletAddress": {
                      "type": "string",
                      "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                    },
                    "destinationWalletMemo": {
                      "type": "string",
                      "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                    },
                    "destinationCurrencySymbol": {
                      "type": "string",
                      "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "ETH destination details",
                  "anyOf": [
                    {
                      "required": [
                        "address"
                      ],
                      "properties": {
                        "address": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    },
                    {
                      "required": [
                        "destinationWalletAddress"
                      ],
                      "properties": {
                        "destinationWalletAddress": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    }
                  ],
                  "title": "ETH"
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "MATIC"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                    },
                    "memo": {
                      "type": "string",
                      "description": "Memo for the wallet, when the chain uses one"
                    },
                    "txId": {
                      "type": "string",
                      "description": "Blockchain transaction ID"
                    },
                    "txUrlScan": {
                      "type": "string",
                      "description": "Blockchain explorer URL for the transaction"
                    },
                    "destinationWalletAddress": {
                      "type": "string",
                      "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                    },
                    "destinationWalletMemo": {
                      "type": "string",
                      "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                    },
                    "destinationCurrencySymbol": {
                      "type": "string",
                      "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "MATIC destination details",
                  "anyOf": [
                    {
                      "required": [
                        "address"
                      ],
                      "properties": {
                        "address": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    },
                    {
                      "required": [
                        "destinationWalletAddress"
                      ],
                      "properties": {
                        "destinationWalletAddress": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    }
                  ],
                  "title": "MATIC"
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "SOL"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                    },
                    "memo": {
                      "type": "string",
                      "description": "Memo for the wallet, when the chain uses one"
                    },
                    "txId": {
                      "type": "string",
                      "description": "Blockchain transaction ID"
                    },
                    "txUrlScan": {
                      "type": "string",
                      "description": "Blockchain explorer URL for the transaction"
                    },
                    "destinationWalletAddress": {
                      "type": "string",
                      "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                    },
                    "destinationWalletMemo": {
                      "type": "string",
                      "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                    },
                    "destinationCurrencySymbol": {
                      "type": "string",
                      "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "SOL destination details",
                  "anyOf": [
                    {
                      "required": [
                        "address"
                      ],
                      "properties": {
                        "address": {
                          "pattern": "\\S"
                        }
                      }
                    },
                    {
                      "required": [
                        "destinationWalletAddress"
                      ],
                      "properties": {
                        "destinationWalletAddress": {
                          "pattern": "\\S"
                        }
                      }
                    }
                  ],
                  "title": "SOL"
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "TRON"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                    },
                    "memo": {
                      "type": "string",
                      "description": "Memo for the wallet, when the chain uses one"
                    },
                    "txId": {
                      "type": "string",
                      "description": "Blockchain transaction ID"
                    },
                    "txUrlScan": {
                      "type": "string",
                      "description": "Blockchain explorer URL for the transaction"
                    },
                    "destinationWalletAddress": {
                      "type": "string",
                      "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                    },
                    "destinationWalletMemo": {
                      "type": "string",
                      "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                    },
                    "destinationCurrencySymbol": {
                      "type": "string",
                      "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "TRON destination details",
                  "anyOf": [
                    {
                      "required": [
                        "address"
                      ],
                      "properties": {
                        "address": {
                          "pattern": "\\S"
                        }
                      }
                    },
                    {
                      "required": [
                        "destinationWalletAddress"
                      ],
                      "properties": {
                        "destinationWalletAddress": {
                          "pattern": "\\S"
                        }
                      }
                    }
                  ],
                  "title": "TRON"
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "CELO"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                    },
                    "memo": {
                      "type": "string",
                      "description": "Memo for the wallet, when the chain uses one"
                    },
                    "txId": {
                      "type": "string",
                      "description": "Blockchain transaction ID"
                    },
                    "txUrlScan": {
                      "type": "string",
                      "description": "Blockchain explorer URL for the transaction"
                    },
                    "destinationWalletAddress": {
                      "type": "string",
                      "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                    },
                    "destinationWalletMemo": {
                      "type": "string",
                      "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                    },
                    "destinationCurrencySymbol": {
                      "type": "string",
                      "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "CELO destination details",
                  "anyOf": [
                    {
                      "required": [
                        "address"
                      ],
                      "properties": {
                        "address": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    },
                    {
                      "required": [
                        "destinationWalletAddress"
                      ],
                      "properties": {
                        "destinationWalletAddress": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    }
                  ],
                  "title": "CELO"
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "BTC"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                    },
                    "memo": {
                      "type": "string",
                      "description": "Memo for the wallet, when the chain uses one"
                    },
                    "txId": {
                      "type": "string",
                      "description": "Blockchain transaction ID"
                    },
                    "txUrlScan": {
                      "type": "string",
                      "description": "Blockchain explorer URL for the transaction"
                    },
                    "destinationWalletAddress": {
                      "type": "string",
                      "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                    },
                    "destinationWalletMemo": {
                      "type": "string",
                      "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                    },
                    "destinationCurrencySymbol": {
                      "type": "string",
                      "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "BTC destination details",
                  "anyOf": [
                    {
                      "required": [
                        "address"
                      ],
                      "properties": {
                        "address": {
                          "pattern": "\\S"
                        }
                      }
                    },
                    {
                      "required": [
                        "destinationWalletAddress"
                      ],
                      "properties": {
                        "destinationWalletAddress": {
                          "pattern": "\\S"
                        }
                      }
                    }
                  ],
                  "title": "BTC"
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "SOLANA"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                    },
                    "memo": {
                      "type": "string",
                      "description": "Memo for the wallet, when the chain uses one"
                    },
                    "txId": {
                      "type": "string",
                      "description": "Blockchain transaction ID"
                    },
                    "txUrlScan": {
                      "type": "string",
                      "description": "Blockchain explorer URL for the transaction"
                    },
                    "destinationWalletAddress": {
                      "type": "string",
                      "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                    },
                    "destinationWalletMemo": {
                      "type": "string",
                      "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                    },
                    "destinationCurrencySymbol": {
                      "type": "string",
                      "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "SOLANA destination details",
                  "anyOf": [
                    {
                      "required": [
                        "address"
                      ],
                      "properties": {
                        "address": {
                          "pattern": "\\S"
                        }
                      }
                    },
                    {
                      "required": [
                        "destinationWalletAddress"
                      ],
                      "properties": {
                        "destinationWalletAddress": {
                          "pattern": "\\S"
                        }
                      }
                    }
                  ],
                  "title": "SOLANA"
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "XRP"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                    },
                    "memo": {
                      "type": "string",
                      "description": "Memo for the wallet, when the chain uses one"
                    },
                    "txId": {
                      "type": "string",
                      "description": "Blockchain transaction ID"
                    },
                    "txUrlScan": {
                      "type": "string",
                      "description": "Blockchain explorer URL for the transaction"
                    },
                    "destinationWalletAddress": {
                      "type": "string",
                      "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                    },
                    "destinationWalletMemo": {
                      "type": "string",
                      "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                    },
                    "destinationCurrencySymbol": {
                      "type": "string",
                      "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "XRP destination details",
                  "anyOf": [
                    {
                      "required": [
                        "address"
                      ],
                      "properties": {
                        "address": {
                          "pattern": "\\S"
                        }
                      }
                    },
                    {
                      "required": [
                        "destinationWalletAddress"
                      ],
                      "properties": {
                        "destinationWalletAddress": {
                          "pattern": "\\S"
                        }
                      }
                    }
                  ],
                  "title": "XRP"
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "CARDANO"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                    },
                    "memo": {
                      "type": "string",
                      "description": "Memo for the wallet, when the chain uses one"
                    },
                    "txId": {
                      "type": "string",
                      "description": "Blockchain transaction ID"
                    },
                    "txUrlScan": {
                      "type": "string",
                      "description": "Blockchain explorer URL for the transaction"
                    },
                    "destinationWalletAddress": {
                      "type": "string",
                      "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                    },
                    "destinationWalletMemo": {
                      "type": "string",
                      "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                    },
                    "destinationCurrencySymbol": {
                      "type": "string",
                      "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "CARDANO destination details",
                  "anyOf": [
                    {
                      "required": [
                        "address"
                      ],
                      "properties": {
                        "address": {
                          "pattern": "\\S"
                        }
                      }
                    },
                    {
                      "required": [
                        "destinationWalletAddress"
                      ],
                      "properties": {
                        "destinationWalletAddress": {
                          "pattern": "\\S"
                        }
                      }
                    }
                  ],
                  "title": "CARDANO"
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "BSC"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                    },
                    "memo": {
                      "type": "string",
                      "description": "Memo for the wallet, when the chain uses one"
                    },
                    "txId": {
                      "type": "string",
                      "description": "Blockchain transaction ID"
                    },
                    "txUrlScan": {
                      "type": "string",
                      "description": "Blockchain explorer URL for the transaction"
                    },
                    "destinationWalletAddress": {
                      "type": "string",
                      "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                    },
                    "destinationWalletMemo": {
                      "type": "string",
                      "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                    },
                    "destinationCurrencySymbol": {
                      "type": "string",
                      "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "BSC destination details",
                  "anyOf": [
                    {
                      "required": [
                        "address"
                      ],
                      "properties": {
                        "address": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    },
                    {
                      "required": [
                        "destinationWalletAddress"
                      ],
                      "properties": {
                        "destinationWalletAddress": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    }
                  ],
                  "title": "BSC"
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "ARBITRUM"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                    },
                    "memo": {
                      "type": "string",
                      "description": "Memo for the wallet, when the chain uses one"
                    },
                    "txId": {
                      "type": "string",
                      "description": "Blockchain transaction ID"
                    },
                    "txUrlScan": {
                      "type": "string",
                      "description": "Blockchain explorer URL for the transaction"
                    },
                    "destinationWalletAddress": {
                      "type": "string",
                      "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                    },
                    "destinationWalletMemo": {
                      "type": "string",
                      "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                    },
                    "destinationCurrencySymbol": {
                      "type": "string",
                      "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "ARBITRUM destination details",
                  "anyOf": [
                    {
                      "required": [
                        "address"
                      ],
                      "properties": {
                        "address": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    },
                    {
                      "required": [
                        "destinationWalletAddress"
                      ],
                      "properties": {
                        "destinationWalletAddress": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    }
                  ],
                  "title": "ARBITRUM"
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "OPTIMISM"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                    },
                    "memo": {
                      "type": "string",
                      "description": "Memo for the wallet, when the chain uses one"
                    },
                    "txId": {
                      "type": "string",
                      "description": "Blockchain transaction ID"
                    },
                    "txUrlScan": {
                      "type": "string",
                      "description": "Blockchain explorer URL for the transaction"
                    },
                    "destinationWalletAddress": {
                      "type": "string",
                      "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                    },
                    "destinationWalletMemo": {
                      "type": "string",
                      "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                    },
                    "destinationCurrencySymbol": {
                      "type": "string",
                      "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "OPTIMISM destination details",
                  "anyOf": [
                    {
                      "required": [
                        "address"
                      ],
                      "properties": {
                        "address": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    },
                    {
                      "required": [
                        "destinationWalletAddress"
                      ],
                      "properties": {
                        "destinationWalletAddress": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    }
                  ],
                  "title": "OPTIMISM"
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "AVALANCHE"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                    },
                    "memo": {
                      "type": "string",
                      "description": "Memo for the wallet, when the chain uses one"
                    },
                    "txId": {
                      "type": "string",
                      "description": "Blockchain transaction ID"
                    },
                    "txUrlScan": {
                      "type": "string",
                      "description": "Blockchain explorer URL for the transaction"
                    },
                    "destinationWalletAddress": {
                      "type": "string",
                      "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                    },
                    "destinationWalletMemo": {
                      "type": "string",
                      "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                    },
                    "destinationCurrencySymbol": {
                      "type": "string",
                      "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "AVALANCHE destination details",
                  "anyOf": [
                    {
                      "required": [
                        "address"
                      ],
                      "properties": {
                        "address": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    },
                    {
                      "required": [
                        "destinationWalletAddress"
                      ],
                      "properties": {
                        "destinationWalletAddress": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    }
                  ],
                  "title": "AVALANCHE"
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "BASE"
                      ]
                    },
                    "address": {
                      "type": "string",
                      "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                    },
                    "memo": {
                      "type": "string",
                      "description": "Memo for the wallet, when the chain uses one"
                    },
                    "txId": {
                      "type": "string",
                      "description": "Blockchain transaction ID"
                    },
                    "txUrlScan": {
                      "type": "string",
                      "description": "Blockchain explorer URL for the transaction"
                    },
                    "destinationWalletAddress": {
                      "type": "string",
                      "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                    },
                    "destinationWalletMemo": {
                      "type": "string",
                      "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                    },
                    "destinationCurrencySymbol": {
                      "type": "string",
                      "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                    }
                  },
                  "required": [
                    "type"
                  ],
                  "description": "BASE destination details",
                  "anyOf": [
                    {
                      "required": [
                        "address"
                      ],
                      "properties": {
                        "address": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    },
                    {
                      "required": [
                        "destinationWalletAddress"
                      ],
                      "properties": {
                        "destinationWalletAddress": {
                          "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                        }
                      }
                    }
                  ],
                  "title": "BASE"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_COL"
                      ]
                    },
                    "destinationBankCode": {
                      "type": "string",
                      "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                    },
                    "destinationBankAccountType": {
                      "type": "string",
                      "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "description": "Recipient ID document number. Required when creating or updating a destination."
                    },
                    "destinationDocumentType": {
                      "type": "string",
                      "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                  "title": "Bank Deposit COL"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "brebKey": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Bre-B key (llave) that identifies the recipient account"
                    },
                    "email": {
                      "type": "string",
                      "description": "Recipient email (optional contact for the Bre-B rail)"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Recipient phone number (optional contact for the Bre-B rail)"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BRE_B_COP"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "brebKey",
                    "type"
                  ],
                  "description": "Colombian Bre-B payout details",
                  "title": "Bre-B COP"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankCode": {
                      "type": "string",
                      "pattern": "^\\d{4}$",
                      "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                    },
                    "destinationBankAccountNumber": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Recipient bank account number"
                    },
                    "destinationBankAccountType": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                    },
                    "destinationDocumentType": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Recipient ID document number"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "ACH_COP"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankCode",
                    "destinationBankAccountNumber",
                    "destinationBankAccountType",
                    "destinationDocumentType",
                    "destinationTaxId",
                    "type"
                  ],
                  "description": "Colombian ACH payout details",
                  "title": "ACH COP"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (unused for TWD — no network discovery)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "minLength": 2,
                      "description": "Bank name (required — TWD payouts run over SWIFT)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_TW"
                      ]
                    },
                    "destinationBankBranch": {
                      "type": "string",
                      "minLength": 2,
                      "description": "Bank branch (required — TWD payouts run over SWIFT)"
                    },
                    "bic": {
                      "type": "string",
                      "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                      "description": "SWIFT BIC code (required for TWD payouts)"
                    },
                    "destinationBankAccountType": {
                      "type": "string",
                      "description": "Type of bank account (legacy, optional)"
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "description": "Tax ID of the recipient (legacy, optional)"
                    },
                    "destinationDocumentType": {
                      "type": "string",
                      "description": "Document type of the recipient (legacy, optional)"
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "destinationBankName",
                    "type",
                    "destinationBankBranch",
                    "bic"
                  ],
                  "description": "Taiwan bank deposit details (SWIFT payout)",
                  "title": "Bank Deposit TW"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankCode": {
                      "type": "string",
                      "description": "Bank code"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationBankBranch": {
                      "type": "string",
                      "description": "Bank branch"
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "description": "Tax ID of the recipient"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_BR"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankCode",
                    "destinationBankAccount",
                    "destinationBankBranch",
                    "destinationTaxId",
                    "type"
                  ],
                  "description": "Brazilian bank deposit details",
                  "title": "Bank Deposit BR"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPixCode": {
                      "type": "string",
                      "description": "PIX code"
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "description": "Tax ID of the recipient"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "PIX_BR"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPixCode",
                    "destinationTaxId",
                    "type"
                  ],
                  "description": "Brazilian PIX details",
                  "title": "PIX BR"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccountNumber": {
                      "type": "string",
                      "description": "Bank account number"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Name of the bank"
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                      "description": "Tax ID of the recipient"
                    },
                    "destinationBankAccountType": {
                      "type": "string",
                      "description": "Type of bank account"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_VEN"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccountNumber",
                    "destinationBankName",
                    "destinationTaxId",
                    "destinationBankAccountType",
                    "type"
                  ],
                  "description": "Venezuelan bank deposit details",
                  "title": "Bank Deposit VEN"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankCode": {
                      "type": "string",
                      "description": "Bank code"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                      "description": "Tax ID of the recipient"
                    },
                    "destinationBankAccountType": {
                      "type": "string",
                      "description": "Type of bank account"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "PHONE_DEPOSIT_VEN"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankCode",
                    "destinationPhoneNumber",
                    "destinationTaxId",
                    "destinationBankAccountType",
                    "type"
                  ],
                  "description": "Venezuelan phone deposit details",
                  "title": "Phone Deposit VEN"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationIFSC": {
                      "type": "string",
                      "description": "IFSC code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_IN"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                  "title": "Bank Deposit IN",
                  "deprecated": true
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationIFSC": {
                      "type": "string",
                      "description": "IFSC code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "IMPS"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                  "title": "IMPS",
                  "deprecated": true
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationIFSC": {
                      "type": "string",
                      "description": "IFSC code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "THAI_QR"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                  "title": "Thai QR",
                  "deprecated": true
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationIFSC": {
                      "type": "string",
                      "description": "IFSC code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "VIET_QR"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                  "title": "Viet QR",
                  "deprecated": true
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationIFSC": {
                      "type": "string",
                      "description": "IFSC code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "GCASH"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                  "title": "GCash",
                  "deprecated": true
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "description": "Tax ID"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "MOBILE_PAYMENT_IN"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPhoneNumber",
                    "destinationTaxId",
                    "type"
                  ],
                  "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                  "title": "Mobile Payment IN",
                  "deprecated": true
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationBankCode": {
                      "type": "string",
                      "description": "Bank code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_VN"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "destinationBankCode",
                    "type"
                  ],
                  "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                  "title": "Bank Deposit VN",
                  "deprecated": true
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "bic": {
                      "type": "string",
                      "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "destinationAddress": {
                      "type": "string",
                      "description": "Address line 1 of the recipient"
                    },
                    "destinationCity": {
                      "type": "string",
                      "description": "Recipient city (defaults to Hong Kong)"
                    },
                    "accountHolderName": {
                      "type": "string",
                      "description": "Bank account holder name if different from payee"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_HK"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "bic",
                    "destinationBankName",
                    "destinationAddress",
                    "type"
                  ],
                  "description": "Hong Kong bank deposit details (HKD bank corridor)",
                  "title": "Bank Deposit HK"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationBankCode": {
                      "type": "string",
                      "pattern": "^\\d+$",
                      "description": "CNAPS / bank institution code (numeric, variable length)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name"
                    },
                    "destinationAddress": {
                      "type": "string",
                      "description": "Address line 1 of the recipient"
                    },
                    "destinationCity": {
                      "type": "string",
                      "description": "Recipient city"
                    },
                    "destinationState": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                    },
                    "destinationPostcode": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                    },
                    "destinationPhone": {
                      "type": "string",
                      "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                    },
                    "accountHolderName": {
                      "type": "string",
                      "description": "Bank account holder name if different from payee"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_CN"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "destinationBankCode",
                    "destinationBankName",
                    "destinationAddress",
                    "destinationCity",
                    "destinationState",
                    "destinationPostcode",
                    "type"
                  ],
                  "description": "China mainland bank deposit details (CNY bank corridor)",
                  "title": "Bank Deposit CN"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_AR"
                      ]
                    },
                    "destinationCBU": {
                      "type": "string",
                      "description": "CBU — 22-digit bank account key (legacy, optional)"
                    },
                    "destinationCVU": {
                      "type": "string",
                      "description": "CVU — 22-digit virtual account key (legacy, optional)"
                    },
                    "destinationAlias": {
                      "type": "string",
                      "description": "Account alias (legacy, optional)"
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                    },
                    "destinationDocumentType": {
                      "type": "string",
                      "description": "Document type of the recipient (legacy, optional)"
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Argentinian bank deposit details",
                  "title": "Bank Deposit AR"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationBankName is given)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Recipient bank name (required for Chilean bank payouts)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_CL"
                      ]
                    },
                    "destinationBankAccountType": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "minLength": 1,
                      "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                    },
                    "destinationDocumentType": {
                      "type": "string",
                      "description": "Document type of the recipient (legacy, optional)"
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "destinationBankName",
                    "type",
                    "destinationBankAccountType",
                    "destinationTaxId"
                  ],
                  "description": "Chilean bank deposit details",
                  "title": "Bank Deposit CL"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "minLength": 2,
                      "maxLength": 30,
                      "description": "Recipient name (required, 2–30 characters)"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 11,
                      "description": "Bank account number (max 11 digits for Bolivian accounts)"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (unused for BOB — no network discovery)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "maxLength": 20,
                      "description": "Bank name (optional, max 20 characters)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_BO"
                      ]
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 15,
                      "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type",
                    "destinationTaxId"
                  ],
                  "description": "Bolivian bank deposit details",
                  "title": "Bank Deposit BO"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_PE"
                      ]
                    },
                    "destinationCCI": {
                      "type": "string",
                      "description": "CCI — 20-digit interbank account code (legacy, optional)"
                    },
                    "destinationBankAccountType": {
                      "type": "string",
                      "description": "Account type (corriente/ahorro) (legacy, optional)"
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                    },
                    "destinationDocumentType": {
                      "type": "string",
                      "description": "Document type of the recipient (legacy, optional)"
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "destinationNetworkId",
                    "type"
                  ],
                  "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                  "title": "Bank Deposit PE",
                  "deprecated": true
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankCode": {
                      "type": "string",
                      "pattern": "^\\d{3}$",
                      "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                    },
                    "destinationBankAccountNumber": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 20,
                      "description": "Recipient bank account number (max 20)"
                    },
                    "destinationBankAccountType": {
                      "type": "string",
                      "enum": [
                        "CORRIENTE",
                        "AHORROS",
                        "PHONE"
                      ],
                      "description": "Bank account type"
                    },
                    "destinationCCI": {
                      "type": "string",
                      "pattern": "^\\d{1,20}$",
                      "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                    },
                    "destinationDocumentType": {
                      "type": "string",
                      "enum": [
                        "CC",
                        "CE",
                        "RUC",
                        "PAS",
                        "PAR",
                        "LMI",
                        "OTHER"
                      ],
                      "description": "Recipient identification type"
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 50,
                      "description": "Recipient identification number (max 50)"
                    },
                    "email": {
                      "type": "string",
                      "pattern": "^.+@.+\\..+$",
                      "description": "Recipient email (required for PEN payouts)"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "pattern": "^\\d{1,9}$",
                      "description": "Recipient phone number (required, max 9 digits)"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_PEN"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankCode",
                    "destinationBankAccountNumber",
                    "destinationBankAccountType",
                    "destinationCCI",
                    "destinationDocumentType",
                    "destinationTaxId",
                    "email",
                    "destinationPhoneNumber",
                    "type"
                  ],
                  "description": "Peruvian bank deposit details (bank-code payout corridor).",
                  "title": "Bank Deposit PEN"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationBankName is given)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_NG"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Nigeria bank deposit details",
                  "title": "Bank Deposit NG"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationBankName is given)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_KE"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Kenya bank deposit details",
                  "title": "Bank Deposit KE"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationBankName is given)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_GH"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                  "title": "Bank Deposit GH",
                  "deprecated": true
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationBankName is given)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_ZA"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "South Africa bank deposit details",
                  "title": "Bank Deposit ZA"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationBankName is given)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_TZ"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Tanzania bank deposit details",
                  "title": "Bank Deposit TZ"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationBankName is given)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_UG"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Uganda bank deposit details",
                  "title": "Bank Deposit UG"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationBankName is given)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_RW"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Rwanda bank deposit details",
                  "title": "Bank Deposit RW"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationBankName is given)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_MW"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Malawi bank deposit details",
                  "title": "Bank Deposit MW"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationBankName is given)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_ZM"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Zambia bank deposit details",
                  "title": "Bank Deposit ZM"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationBankName is given)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_BW"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Botswana bank deposit details",
                  "title": "Bank Deposit BW"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationBankName is given)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_CD"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                  "title": "Bank Deposit CD",
                  "deprecated": true
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationBankName is given)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_XOF"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "West African CFA bank deposit details",
                  "title": "Bank Deposit XOF"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankAccount": {
                      "type": "string",
                      "description": "Bank account"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationBankName is given)"
                    },
                    "destinationBankName": {
                      "type": "string",
                      "description": "Bank name (used to resolve the network when id is omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_XAF"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccount",
                    "type"
                  ],
                  "description": "Central African CFA bank deposit details",
                  "title": "Bank Deposit XAF"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationNetworkName is given)"
                    },
                    "destinationNetworkName": {
                      "type": "string",
                      "description": "Mobile money network name (resolves the network when id omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_NG"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPhoneNumber",
                    "type"
                  ],
                  "description": "Nigeria mobile money details",
                  "title": "Mobile Money NG"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationNetworkName is given)"
                    },
                    "destinationNetworkName": {
                      "type": "string",
                      "description": "Mobile money network name (resolves the network when id omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_KE"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPhoneNumber",
                    "type"
                  ],
                  "description": "Kenya mobile money details",
                  "title": "Mobile Money KE"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationNetworkName is given)"
                    },
                    "destinationNetworkName": {
                      "type": "string",
                      "description": "Mobile money network name (resolves the network when id omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_GH"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPhoneNumber",
                    "type"
                  ],
                  "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                  "title": "Mobile Money GH",
                  "deprecated": true
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationNetworkName is given)"
                    },
                    "destinationNetworkName": {
                      "type": "string",
                      "description": "Mobile money network name (resolves the network when id omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_ZA"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPhoneNumber",
                    "type"
                  ],
                  "description": "South Africa mobile money details",
                  "title": "Mobile Money ZA"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationNetworkName is given)"
                    },
                    "destinationNetworkName": {
                      "type": "string",
                      "description": "Mobile money network name (resolves the network when id omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_TZ"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPhoneNumber",
                    "type"
                  ],
                  "description": "Tanzania mobile money details",
                  "title": "Mobile Money TZ"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationNetworkName is given)"
                    },
                    "destinationNetworkName": {
                      "type": "string",
                      "description": "Mobile money network name (resolves the network when id omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_UG"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPhoneNumber",
                    "type"
                  ],
                  "description": "Uganda mobile money details",
                  "title": "Mobile Money UG"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationNetworkName is given)"
                    },
                    "destinationNetworkName": {
                      "type": "string",
                      "description": "Mobile money network name (resolves the network when id omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_RW"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPhoneNumber",
                    "type"
                  ],
                  "description": "Rwanda mobile money details",
                  "title": "Mobile Money RW"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationNetworkName is given)"
                    },
                    "destinationNetworkName": {
                      "type": "string",
                      "description": "Mobile money network name (resolves the network when id omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_MW"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPhoneNumber",
                    "type"
                  ],
                  "description": "Malawi mobile money details",
                  "title": "Mobile Money MW"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationNetworkName is given)"
                    },
                    "destinationNetworkName": {
                      "type": "string",
                      "description": "Mobile money network name (resolves the network when id omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_ZM"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPhoneNumber",
                    "type"
                  ],
                  "description": "Zambia mobile money details",
                  "title": "Mobile Money ZM"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationNetworkName is given)"
                    },
                    "destinationNetworkName": {
                      "type": "string",
                      "description": "Mobile money network name (resolves the network when id omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_BW"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPhoneNumber",
                    "type"
                  ],
                  "description": "Botswana mobile money details",
                  "title": "Mobile Money BW"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationNetworkName is given)"
                    },
                    "destinationNetworkName": {
                      "type": "string",
                      "description": "Mobile money network name (resolves the network when id omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_CD"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPhoneNumber",
                    "type"
                  ],
                  "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                  "title": "Mobile Money CD",
                  "deprecated": true
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationNetworkName is given)"
                    },
                    "destinationNetworkName": {
                      "type": "string",
                      "description": "Mobile money network name (resolves the network when id omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_XOF"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPhoneNumber",
                    "type"
                  ],
                  "description": "West African CFA mobile money details",
                  "title": "Mobile Money XOF"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPhoneNumber": {
                      "type": "string",
                      "description": "Phone number"
                    },
                    "destinationNetworkId": {
                      "type": "string",
                      "description": "Payout network id (optional if destinationNetworkName is given)"
                    },
                    "destinationNetworkName": {
                      "type": "string",
                      "description": "Mobile money network name (resolves the network when id omitted)"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166 country code"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "MOBILE_MONEY_XAF"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPhoneNumber",
                    "type"
                  ],
                  "description": "Central African CFA mobile money details",
                  "title": "Mobile Money XAF"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationBankCode": {
                      "type": "string",
                      "description": "Bank code"
                    },
                    "destinationBankAccountNumber": {
                      "type": "string",
                      "description": "Bank account number (18-digit CLABE)"
                    },
                    "numericReference": {
                      "type": "string",
                      "description": "Numeric reference"
                    },
                    "notesReference": {
                      "type": "string",
                      "description": "Notes reference"
                    },
                    "destinationClabe": {
                      "type": "string",
                      "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                    },
                    "destinationTaxId": {
                      "type": "string",
                      "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "BANK_DEPOSIT_MX"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationBankAccountNumber",
                    "type"
                  ],
                  "description": "Mexican bank deposit details",
                  "title": "Bank Deposit MX"
                },
                {
                  "type": "object",
                  "properties": {
                    "destinationName": {
                      "type": "string",
                      "description": "Name of the recipient"
                    },
                    "destinationPseNumber": {
                      "type": "string",
                      "description": "PSE number"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "PSE"
                      ]
                    }
                  },
                  "required": [
                    "destinationName",
                    "destinationPseNumber",
                    "type"
                  ],
                  "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                  "title": "PSE",
                  "deprecated": true
                }
              ],
              "description": "Detailed withdrawal information",
              "title": "WithdrawalInfo"
            },
            "source": {
              "type": "string",
              "enum": [
                "ui",
                "apiApp",
                "externalApi",
                "internal"
              ],
              "description": "Source of withdrawal creation",
              "example": "externalApi"
            },
            "requires2FA": {
              "type": "boolean",
              "description": "Whether 2FA is required for this withdrawal",
              "example": false
            },
            "twoFactorToken": {
              "type": "string",
              "description": "2FA token for email approval",
              "example": "abc123"
            },
            "twoFactorApprovedAt": {
              "type": "number",
              "description": "Timestamp when 2FA was approved",
              "example": 1723027132
            },
            "errorCode": {
              "type": "string",
              "description": "Error code when status is Review",
              "example": "INSUFFICIENT_BALANCE"
            },
            "errorDetails": {
              "type": "string",
              "description": "Detailed error information",
              "example": "Insufficient balance for withdrawal"
            },
            "reviewedBy": {
              "type": "string",
              "description": "Admin email who reviewed the withdrawal",
              "example": "admin@example.com"
            },
            "reviewedAt": {
              "type": "number",
              "description": "Timestamp when review happened",
              "example": 1723027132
            }
          },
          "required": [
            "withdrawalId",
            "createdAt",
            "amount",
            "currency",
            "fee",
            "feeCurrency",
            "status"
          ],
          "description": "Withdrawal Data"
        },
        "description": "Response schema for listing withdrawals"
      },
      "DeleteWithdrawalRequest": {
        "type": "object",
        "properties": {
          "withdrawalId": {
            "type": "string",
            "description": "ID of the withdrawal"
          },
          "userEmail": {
            "type": "string",
            "format": "email",
            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
            "description": "Email of the user making the request",
            "example": "user@example.com"
          }
        },
        "required": [
          "withdrawalId"
        ],
        "description": "Request schema for deleting a withdrawal"
      },
      "DeleteWithdrawalResponse": {
        "type": "object",
        "properties": {},
        "description": "Response schema for successful deletion"
      },
      "CreateKYCRequest": {
        "type": "object",
        "properties": {
          "userEmail": {
            "type": "string",
            "minLength": 1,
            "maxLength": 254,
            "format": "email",
            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
            "description": "User email. Must match your workspace account onboarding rules."
          },
          "userPhone": {
            "type": "string",
            "description": "Optional. Required for some corridors (e.g. India, Turkey). Format: country code with `+`, a hyphen, then the number (e.g. +44-7700900123)."
          },
          "externalUserId": {
            "type": "string",
            "description": "Optional. Your own user identifier in your system, if you track users externally."
          },
          "countryCode": {
            "type": "string",
            "enum": [
              "AW",
              "AF",
              "AO",
              "AI",
              "AX",
              "AL",
              "AD",
              "AE",
              "AR",
              "AM",
              "AS",
              "AQ",
              "TF",
              "AG",
              "AU",
              "AT",
              "AZ",
              "BI",
              "BE",
              "BJ",
              "BQ",
              "BF",
              "BD",
              "BG",
              "BH",
              "BS",
              "BA",
              "BL",
              "BY",
              "BZ",
              "BM",
              "BO",
              "BR",
              "BB",
              "BN",
              "BT",
              "BV",
              "BW",
              "CF",
              "CA",
              "CC",
              "CH",
              "CL",
              "CN",
              "CI",
              "CM",
              "CD",
              "CG",
              "CK",
              "CO",
              "KM",
              "CV",
              "CR",
              "CU",
              "CW",
              "CX",
              "KY",
              "CY",
              "CZ",
              "DE",
              "DJ",
              "DM",
              "DK",
              "DO",
              "DZ",
              "EC",
              "EG",
              "ER",
              "EH",
              "ES",
              "EE",
              "ET",
              "FI",
              "FJ",
              "FK",
              "FR",
              "FO",
              "FM",
              "GA",
              "GB",
              "GE",
              "GG",
              "GH",
              "GI",
              "GN",
              "GP",
              "GM",
              "GW",
              "GQ",
              "GR",
              "GD",
              "GL",
              "GT",
              "GF",
              "GU",
              "GY",
              "HK",
              "HM",
              "HN",
              "HR",
              "HT",
              "HU",
              "ID",
              "IM",
              "IN",
              "IO",
              "IE",
              "IR",
              "IQ",
              "IS",
              "IL",
              "IT",
              "JM",
              "JE",
              "JO",
              "JP",
              "KZ",
              "KE",
              "KG",
              "KH",
              "KI",
              "KN",
              "KR",
              "KW",
              "LA",
              "LB",
              "LR",
              "LY",
              "LC",
              "LI",
              "LK",
              "LS",
              "LT",
              "LU",
              "LV",
              "MO",
              "MF",
              "MA",
              "MC",
              "MD",
              "MG",
              "MV",
              "MX",
              "MH",
              "MK",
              "ML",
              "MT",
              "MM",
              "ME",
              "MN",
              "MP",
              "MZ",
              "MR",
              "MS",
              "MQ",
              "MU",
              "MW",
              "MY",
              "YT",
              "NA",
              "NC",
              "NE",
              "NF",
              "NG",
              "NI",
              "NU",
              "NL",
              "NO",
              "NP",
              "NR",
              "NZ",
              "OM",
              "PK",
              "PA",
              "PN",
              "PE",
              "PH",
              "PW",
              "PG",
              "PL",
              "PR",
              "KP",
              "PT",
              "PY",
              "PS",
              "PF",
              "QA",
              "RE",
              "RO",
              "RU",
              "RW",
              "SA",
              "SD",
              "SN",
              "SG",
              "GS",
              "SH",
              "SJ",
              "SB",
              "SL",
              "SV",
              "SM",
              "SO",
              "PM",
              "RS",
              "SS",
              "ST",
              "SR",
              "SK",
              "SI",
              "SE",
              "SZ",
              "SX",
              "SC",
              "SY",
              "TC",
              "TD",
              "TG",
              "TH",
              "TJ",
              "TK",
              "TM",
              "TL",
              "TO",
              "TT",
              "TN",
              "TR",
              "TV",
              "TW",
              "TZ",
              "UG",
              "UA",
              "UM",
              "UY",
              "US",
              "UZ",
              "VA",
              "VC",
              "VE",
              "VG",
              "VI",
              "VN",
              "VU",
              "WF",
              "WS",
              "YE",
              "ZA",
              "ZM",
              "ZW"
            ],
            "description": "ISO 3166-1 alpha-2 issuing country (e.g. ES, GB). Pre-selects the country in the hosted verification widget; the backend maps it to ISO alpha-3 for the provider WebSDK."
          },
          "sendOTPMail": {
            "type": "boolean",
            "description": "Whether to send an OTP email to the user. Exact behavior follows your integration contract with VirtuaBroker."
          },
          "type": {
            "type": "string",
            "enum": [
              "INDIVIDUAL",
              "BUSINESS"
            ],
            "description": "KYC category: `INDIVIDUAL` for a natural person or `BUSINESS` for a business flow, per your product setup."
          },
          "language": {
            "type": "string",
            "description": "Optional. Widget UI language and access-token locale (e.g. en, es, fr). If omitted or blank, `en` is used. Use codes supported by the verification provider WebSDK."
          },
          "theme": {
            "type": "string",
            "enum": [
              "dark",
              "light"
            ],
            "description": "Optional. Hosted widget theme for the provider WebSDK. **Default: dark** (omit or send `dark`). Send `light` only for light mode."
          },
          "blank": {
            "type": "boolean",
            "description": "Optional. If `true`, the hosted widget page uses blank framing (minimal chrome: no extra branding, borders, or padding around the iframe)."
          },
          "width": {
            "type": "string",
            "description": "Optional. CSS width for the widget container on the hosted page (e.g. `100%`, `800px`, `1200px`)."
          },
          "height": {
            "type": "string",
            "description": "Optional. CSS height for the widget container on the hosted page (e.g. `100vh`, `600px`, `auto`)."
          },
          "forceMobile": {
            "type": "boolean",
            "description": "Optional. If `true`, forces the verification widget to render its mobile layout regardless of the screen width."
          },
          "successUrl": {
            "type": "string",
            "format": "uri",
            "description": "Optional. URL the user is redirected to after completing verification, where the hosted verification flow supports it. Ignored when no redirect is supported."
          },
          "errorUrl": {
            "type": "string",
            "format": "uri",
            "description": "Optional. URL the user is redirected to if verification fails/cancels, where the provider supports it. Ignored by providers that expose no redirect."
          }
        },
        "required": [
          "userEmail",
          "countryCode",
          "sendOTPMail",
          "type"
        ],
        "description": "Request body for starting or continuing KYC. Required fields are sent on every call; optional fields tune the hosted verification widget and token locale."
      },
      "CreateKYCResponse": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean",
            "description": "Whether the API call completed successfully."
          },
          "kycUrl": {
            "type": "string",
            "description": "Present when the user must complete verification: open this URL in a browser or WebView to run the hosted widget. Omitted when the user is already approved or no widget step is needed."
          },
          "kycId": {
            "type": "string",
            "description": "Your KYC reference ID, used for support and correlation."
          },
          "userEmail": {
            "type": "string",
            "description": "Echo of the user email from the request."
          },
          "missingInfo": {
            "type": "object",
            "properties": {
              "firstName": {
                "type": "string",
                "description": "First name"
              },
              "lastName": {
                "type": "string",
                "description": "Last name"
              },
              "email": {
                "type": "string",
                "description": "Email"
              },
              "phone": {
                "type": "string",
                "description": "Phone"
              }
            },
            "description": "If present, fields the user still needs to provide before verification can continue."
          },
          "status": {
            "type": "string",
            "enum": [
              "PENDING",
              "REVIEWING",
              "IN_PROGRESS",
              "APPROVED",
              "REJECTED",
              "NOT_AVAILABLE"
            ],
            "description": "Current KYC status in the external API enum (e.g. PENDING, APPROVED)."
          },
          "missingFields": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Identity fields the user must still provide (via POST /v1/kyc/data) before verification can start. Present when the configured provider needs profile data that is not yet on file; when non-empty, `kycUrl` is omitted."
          },
          "errorMessage": {
            "type": "string",
            "description": "Human-readable error when `success` is false or the operation could not complete."
          }
        },
        "required": [
          "success"
        ],
        "description": "Response from POST /v1/kyc: outcome, optional widget URL, and verification status."
      },
      "GetKYCStatusRequest": {
        "type": "object",
        "properties": {
          "userEmail": {
            "type": "string",
            "minLength": 1,
            "maxLength": 254,
            "format": "email",
            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
            "description": "User email"
          }
        },
        "required": [
          "userEmail"
        ]
      },
      "GetKYCStatusResponse": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string",
            "enum": [
              "PENDING",
              "REVIEWING",
              "IN_PROGRESS",
              "APPROVED",
              "REJECTED",
              "NOT_AVAILABLE"
            ],
            "description": "Status of the KYC"
          },
          "missingFields": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Identity fields still required by the workspace’s configured KYC provider before verification can complete. Empty/absent when nothing is outstanding."
          },
          "missingInfo": {
            "type": "object",
            "properties": {
              "firstName": {
                "type": "string",
                "description": "First name"
              },
              "lastName": {
                "type": "string",
                "description": "Last name"
              },
              "email": {
                "type": "string",
                "description": "Email"
              },
              "phone": {
                "type": "string",
                "description": "Phone"
              }
            },
            "description": "Missing info of the KYC"
          },
          "message": {
            "type": "string",
            "description": "Message of the KYC"
          }
        },
        "required": [
          "status"
        ]
      },
      "GetWebSdkLinkRequest": {
        "type": "object",
        "properties": {
          "userEmail": {
            "type": "string",
            "minLength": 1,
            "maxLength": 254,
            "format": "email",
            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
            "description": "User email address"
          },
          "levelName": {
            "type": "string",
            "description": "KYC verification level name"
          },
          "ttlInSecs": {
            "type": "number",
            "description": "Time to live for the link in seconds"
          },
          "lang": {
            "type": "string",
            "description": "Language code for the KYC interface"
          }
        },
        "required": [
          "userEmail"
        ]
      },
      "GetWebSdkLinkResponse": {
        "type": "object",
        "properties": {
          "url": {
            "type": "string",
            "description": "Generated WebSDK verification URL"
          }
        },
        "required": [
          "url"
        ]
      },
      "SaveKYCProfileRequest": {
        "type": "object",
        "properties": {
          "userEmail": {
            "type": "string",
            "minLength": 1,
            "maxLength": 254,
            "format": "email",
            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
            "description": "User email. Must match your workspace account onboarding rules."
          },
          "firstName": {
            "type": "string",
            "minLength": 1
          },
          "lastName": {
            "type": "string",
            "minLength": 1
          },
          "birthdate": {
            "type": "string",
            "minLength": 1,
            "description": "ISO 8601"
          },
          "birthCountry": {
            "type": "string",
            "enum": [
              "AW",
              "AF",
              "AO",
              "AI",
              "AX",
              "AL",
              "AD",
              "AE",
              "AR",
              "AM",
              "AS",
              "AQ",
              "TF",
              "AG",
              "AU",
              "AT",
              "AZ",
              "BI",
              "BE",
              "BJ",
              "BQ",
              "BF",
              "BD",
              "BG",
              "BH",
              "BS",
              "BA",
              "BL",
              "BY",
              "BZ",
              "BM",
              "BO",
              "BR",
              "BB",
              "BN",
              "BT",
              "BV",
              "BW",
              "CF",
              "CA",
              "CC",
              "CH",
              "CL",
              "CN",
              "CI",
              "CM",
              "CD",
              "CG",
              "CK",
              "CO",
              "KM",
              "CV",
              "CR",
              "CU",
              "CW",
              "CX",
              "KY",
              "CY",
              "CZ",
              "DE",
              "DJ",
              "DM",
              "DK",
              "DO",
              "DZ",
              "EC",
              "EG",
              "ER",
              "EH",
              "ES",
              "EE",
              "ET",
              "FI",
              "FJ",
              "FK",
              "FR",
              "FO",
              "FM",
              "GA",
              "GB",
              "GE",
              "GG",
              "GH",
              "GI",
              "GN",
              "GP",
              "GM",
              "GW",
              "GQ",
              "GR",
              "GD",
              "GL",
              "GT",
              "GF",
              "GU",
              "GY",
              "HK",
              "HM",
              "HN",
              "HR",
              "HT",
              "HU",
              "ID",
              "IM",
              "IN",
              "IO",
              "IE",
              "IR",
              "IQ",
              "IS",
              "IL",
              "IT",
              "JM",
              "JE",
              "JO",
              "JP",
              "KZ",
              "KE",
              "KG",
              "KH",
              "KI",
              "KN",
              "KR",
              "KW",
              "LA",
              "LB",
              "LR",
              "LY",
              "LC",
              "LI",
              "LK",
              "LS",
              "LT",
              "LU",
              "LV",
              "MO",
              "MF",
              "MA",
              "MC",
              "MD",
              "MG",
              "MV",
              "MX",
              "MH",
              "MK",
              "ML",
              "MT",
              "MM",
              "ME",
              "MN",
              "MP",
              "MZ",
              "MR",
              "MS",
              "MQ",
              "MU",
              "MW",
              "MY",
              "YT",
              "NA",
              "NC",
              "NE",
              "NF",
              "NG",
              "NI",
              "NU",
              "NL",
              "NO",
              "NP",
              "NR",
              "NZ",
              "OM",
              "PK",
              "PA",
              "PN",
              "PE",
              "PH",
              "PW",
              "PG",
              "PL",
              "PR",
              "KP",
              "PT",
              "PY",
              "PS",
              "PF",
              "QA",
              "RE",
              "RO",
              "RU",
              "RW",
              "SA",
              "SD",
              "SN",
              "SG",
              "GS",
              "SH",
              "SJ",
              "SB",
              "SL",
              "SV",
              "SM",
              "SO",
              "PM",
              "RS",
              "SS",
              "ST",
              "SR",
              "SK",
              "SI",
              "SE",
              "SZ",
              "SX",
              "SC",
              "SY",
              "TC",
              "TD",
              "TG",
              "TH",
              "TJ",
              "TK",
              "TM",
              "TL",
              "TO",
              "TT",
              "TN",
              "TR",
              "TV",
              "TW",
              "TZ",
              "UG",
              "UA",
              "UM",
              "UY",
              "US",
              "UZ",
              "VA",
              "VC",
              "VE",
              "VG",
              "VI",
              "VN",
              "VU",
              "WF",
              "WS",
              "YE",
              "ZA",
              "ZM",
              "ZW"
            ],
            "description": "Country of birth, ISO 3166-1 alpha-2"
          },
          "gender": {
            "type": "string",
            "enum": [
              "male",
              "female",
              "N/D"
            ]
          },
          "nationality": {
            "type": "string",
            "enum": [
              "AW",
              "AF",
              "AO",
              "AI",
              "AX",
              "AL",
              "AD",
              "AE",
              "AR",
              "AM",
              "AS",
              "AQ",
              "TF",
              "AG",
              "AU",
              "AT",
              "AZ",
              "BI",
              "BE",
              "BJ",
              "BQ",
              "BF",
              "BD",
              "BG",
              "BH",
              "BS",
              "BA",
              "BL",
              "BY",
              "BZ",
              "BM",
              "BO",
              "BR",
              "BB",
              "BN",
              "BT",
              "BV",
              "BW",
              "CF",
              "CA",
              "CC",
              "CH",
              "CL",
              "CN",
              "CI",
              "CM",
              "CD",
              "CG",
              "CK",
              "CO",
              "KM",
              "CV",
              "CR",
              "CU",
              "CW",
              "CX",
              "KY",
              "CY",
              "CZ",
              "DE",
              "DJ",
              "DM",
              "DK",
              "DO",
              "DZ",
              "EC",
              "EG",
              "ER",
              "EH",
              "ES",
              "EE",
              "ET",
              "FI",
              "FJ",
              "FK",
              "FR",
              "FO",
              "FM",
              "GA",
              "GB",
              "GE",
              "GG",
              "GH",
              "GI",
              "GN",
              "GP",
              "GM",
              "GW",
              "GQ",
              "GR",
              "GD",
              "GL",
              "GT",
              "GF",
              "GU",
              "GY",
              "HK",
              "HM",
              "HN",
              "HR",
              "HT",
              "HU",
              "ID",
              "IM",
              "IN",
              "IO",
              "IE",
              "IR",
              "IQ",
              "IS",
              "IL",
              "IT",
              "JM",
              "JE",
              "JO",
              "JP",
              "KZ",
              "KE",
              "KG",
              "KH",
              "KI",
              "KN",
              "KR",
              "KW",
              "LA",
              "LB",
              "LR",
              "LY",
              "LC",
              "LI",
              "LK",
              "LS",
              "LT",
              "LU",
              "LV",
              "MO",
              "MF",
              "MA",
              "MC",
              "MD",
              "MG",
              "MV",
              "MX",
              "MH",
              "MK",
              "ML",
              "MT",
              "MM",
              "ME",
              "MN",
              "MP",
              "MZ",
              "MR",
              "MS",
              "MQ",
              "MU",
              "MW",
              "MY",
              "YT",
              "NA",
              "NC",
              "NE",
              "NF",
              "NG",
              "NI",
              "NU",
              "NL",
              "NO",
              "NP",
              "NR",
              "NZ",
              "OM",
              "PK",
              "PA",
              "PN",
              "PE",
              "PH",
              "PW",
              "PG",
              "PL",
              "PR",
              "KP",
              "PT",
              "PY",
              "PS",
              "PF",
              "QA",
              "RE",
              "RO",
              "RU",
              "RW",
              "SA",
              "SD",
              "SN",
              "SG",
              "GS",
              "SH",
              "SJ",
              "SB",
              "SL",
              "SV",
              "SM",
              "SO",
              "PM",
              "RS",
              "SS",
              "ST",
              "SR",
              "SK",
              "SI",
              "SE",
              "SZ",
              "SX",
              "SC",
              "SY",
              "TC",
              "TD",
              "TG",
              "TH",
              "TJ",
              "TK",
              "TM",
              "TL",
              "TO",
              "TT",
              "TN",
              "TR",
              "TV",
              "TW",
              "TZ",
              "UG",
              "UA",
              "UM",
              "UY",
              "US",
              "UZ",
              "VA",
              "VC",
              "VE",
              "VG",
              "VI",
              "VN",
              "VU",
              "WF",
              "WS",
              "YE",
              "ZA",
              "ZM",
              "ZW"
            ],
            "description": "ISO 3166-1 alpha-2"
          },
          "phone": {
            "type": "string",
            "minLength": 1,
            "description": "E.164, e.g. +447700900123"
          },
          "employmentStatus": {
            "type": "string",
            "enum": [
              "employed",
              "selfEmployed",
              "businessOwner",
              "unemployed",
              "student",
              "retired",
              "others"
            ]
          },
          "fundsOrigin": {
            "type": "string",
            "enum": [
              "salary",
              "incomes",
              "investments",
              "pensions",
              "donations",
              "propertiesSell",
              "others"
            ]
          },
          "fundsOriginOthersReason": {
            "type": "string",
            "minLength": 1
          },
          "accountPurpose": {
            "type": "string",
            "enum": [
              "savings",
              "currencyExchange",
              "investment",
              "trading",
              "cryptocurrencyPayments"
            ]
          },
          "depositEstimation": {
            "type": "object",
            "properties": {
              "minimum": {
                "type": "integer"
              },
              "maximum": {
                "type": "integer"
              }
            },
            "required": [
              "minimum",
              "maximum"
            ]
          },
          "profession": {
            "type": "string",
            "minLength": 1,
            "description": "The holder's activity sector, as one of the sector codes we publish for your workspace — a short numeric code such as `24`, not a job title. Free text is still accepted for backward compatibility but is NOT recorded: a value that is not a known sector code is treated as not declared. If you do not hold a sector code, omit the field and the holder chooses their sector while completing verification."
          },
          "pepDeclaration": {
            "type": "string",
            "enum": [
              "no",
              "yes",
              "family",
              "related"
            ],
            "description": "The holder's politically-exposed-person self-declaration: `no` (not exposed), `yes` (is a politically exposed person), `family` (an immediate family member of one) or `related` (a known close associate of one). Omit the field when the holder has not answered: an omitted declaration is stored as NOT DECLARED and is never forwarded as `no`. Never send `no` to mean unanswered. The hosted verification page does NOT ask for this field, so supply it here for holders who verify through that page; the in-app verification form collects it directly."
          },
          "taxId": {
            "type": "object",
            "properties": {
              "number": {
                "type": "string",
                "minLength": 1
              },
              "country": {
                "type": "string",
                "enum": [
                  "AW",
                  "AF",
                  "AO",
                  "AI",
                  "AX",
                  "AL",
                  "AD",
                  "AE",
                  "AR",
                  "AM",
                  "AS",
                  "AQ",
                  "TF",
                  "AG",
                  "AU",
                  "AT",
                  "AZ",
                  "BI",
                  "BE",
                  "BJ",
                  "BQ",
                  "BF",
                  "BD",
                  "BG",
                  "BH",
                  "BS",
                  "BA",
                  "BL",
                  "BY",
                  "BZ",
                  "BM",
                  "BO",
                  "BR",
                  "BB",
                  "BN",
                  "BT",
                  "BV",
                  "BW",
                  "CF",
                  "CA",
                  "CC",
                  "CH",
                  "CL",
                  "CN",
                  "CI",
                  "CM",
                  "CD",
                  "CG",
                  "CK",
                  "CO",
                  "KM",
                  "CV",
                  "CR",
                  "CU",
                  "CW",
                  "CX",
                  "KY",
                  "CY",
                  "CZ",
                  "DE",
                  "DJ",
                  "DM",
                  "DK",
                  "DO",
                  "DZ",
                  "EC",
                  "EG",
                  "ER",
                  "EH",
                  "ES",
                  "EE",
                  "ET",
                  "FI",
                  "FJ",
                  "FK",
                  "FR",
                  "FO",
                  "FM",
                  "GA",
                  "GB",
                  "GE",
                  "GG",
                  "GH",
                  "GI",
                  "GN",
                  "GP",
                  "GM",
                  "GW",
                  "GQ",
                  "GR",
                  "GD",
                  "GL",
                  "GT",
                  "GF",
                  "GU",
                  "GY",
                  "HK",
                  "HM",
                  "HN",
                  "HR",
                  "HT",
                  "HU",
                  "ID",
                  "IM",
                  "IN",
                  "IO",
                  "IE",
                  "IR",
                  "IQ",
                  "IS",
                  "IL",
                  "IT",
                  "JM",
                  "JE",
                  "JO",
                  "JP",
                  "KZ",
                  "KE",
                  "KG",
                  "KH",
                  "KI",
                  "KN",
                  "KR",
                  "KW",
                  "LA",
                  "LB",
                  "LR",
                  "LY",
                  "LC",
                  "LI",
                  "LK",
                  "LS",
                  "LT",
                  "LU",
                  "LV",
                  "MO",
                  "MF",
                  "MA",
                  "MC",
                  "MD",
                  "MG",
                  "MV",
                  "MX",
                  "MH",
                  "MK",
                  "ML",
                  "MT",
                  "MM",
                  "ME",
                  "MN",
                  "MP",
                  "MZ",
                  "MR",
                  "MS",
                  "MQ",
                  "MU",
                  "MW",
                  "MY",
                  "YT",
                  "NA",
                  "NC",
                  "NE",
                  "NF",
                  "NG",
                  "NI",
                  "NU",
                  "NL",
                  "NO",
                  "NP",
                  "NR",
                  "NZ",
                  "OM",
                  "PK",
                  "PA",
                  "PN",
                  "PE",
                  "PH",
                  "PW",
                  "PG",
                  "PL",
                  "PR",
                  "KP",
                  "PT",
                  "PY",
                  "PS",
                  "PF",
                  "QA",
                  "RE",
                  "RO",
                  "RU",
                  "RW",
                  "SA",
                  "SD",
                  "SN",
                  "SG",
                  "GS",
                  "SH",
                  "SJ",
                  "SB",
                  "SL",
                  "SV",
                  "SM",
                  "SO",
                  "PM",
                  "RS",
                  "SS",
                  "ST",
                  "SR",
                  "SK",
                  "SI",
                  "SE",
                  "SZ",
                  "SX",
                  "SC",
                  "SY",
                  "TC",
                  "TD",
                  "TG",
                  "TH",
                  "TJ",
                  "TK",
                  "TM",
                  "TL",
                  "TO",
                  "TT",
                  "TN",
                  "TR",
                  "TV",
                  "TW",
                  "TZ",
                  "UG",
                  "UA",
                  "UM",
                  "UY",
                  "US",
                  "UZ",
                  "VA",
                  "VC",
                  "VE",
                  "VG",
                  "VI",
                  "VN",
                  "VU",
                  "WF",
                  "WS",
                  "YE",
                  "ZA",
                  "ZM",
                  "ZW"
                ],
                "description": "Issuing country, ISO 3166-1 alpha-2"
              }
            },
            "required": [
              "number",
              "country"
            ]
          },
          "document": {
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "idcard",
                  "passport",
                  "drivinglicense",
                  "visa"
                ]
              },
              "id": {
                "type": "string",
                "minLength": 1,
                "description": "Document number/identifier"
              },
              "expiryDate": {
                "type": "string",
                "minLength": 1,
                "description": "ISO 8601"
              },
              "issuingCountry": {
                "type": "string",
                "enum": [
                  "AW",
                  "AF",
                  "AO",
                  "AI",
                  "AX",
                  "AL",
                  "AD",
                  "AE",
                  "AR",
                  "AM",
                  "AS",
                  "AQ",
                  "TF",
                  "AG",
                  "AU",
                  "AT",
                  "AZ",
                  "BI",
                  "BE",
                  "BJ",
                  "BQ",
                  "BF",
                  "BD",
                  "BG",
                  "BH",
                  "BS",
                  "BA",
                  "BL",
                  "BY",
                  "BZ",
                  "BM",
                  "BO",
                  "BR",
                  "BB",
                  "BN",
                  "BT",
                  "BV",
                  "BW",
                  "CF",
                  "CA",
                  "CC",
                  "CH",
                  "CL",
                  "CN",
                  "CI",
                  "CM",
                  "CD",
                  "CG",
                  "CK",
                  "CO",
                  "KM",
                  "CV",
                  "CR",
                  "CU",
                  "CW",
                  "CX",
                  "KY",
                  "CY",
                  "CZ",
                  "DE",
                  "DJ",
                  "DM",
                  "DK",
                  "DO",
                  "DZ",
                  "EC",
                  "EG",
                  "ER",
                  "EH",
                  "ES",
                  "EE",
                  "ET",
                  "FI",
                  "FJ",
                  "FK",
                  "FR",
                  "FO",
                  "FM",
                  "GA",
                  "GB",
                  "GE",
                  "GG",
                  "GH",
                  "GI",
                  "GN",
                  "GP",
                  "GM",
                  "GW",
                  "GQ",
                  "GR",
                  "GD",
                  "GL",
                  "GT",
                  "GF",
                  "GU",
                  "GY",
                  "HK",
                  "HM",
                  "HN",
                  "HR",
                  "HT",
                  "HU",
                  "ID",
                  "IM",
                  "IN",
                  "IO",
                  "IE",
                  "IR",
                  "IQ",
                  "IS",
                  "IL",
                  "IT",
                  "JM",
                  "JE",
                  "JO",
                  "JP",
                  "KZ",
                  "KE",
                  "KG",
                  "KH",
                  "KI",
                  "KN",
                  "KR",
                  "KW",
                  "LA",
                  "LB",
                  "LR",
                  "LY",
                  "LC",
                  "LI",
                  "LK",
                  "LS",
                  "LT",
                  "LU",
                  "LV",
                  "MO",
                  "MF",
                  "MA",
                  "MC",
                  "MD",
                  "MG",
                  "MV",
                  "MX",
                  "MH",
                  "MK",
                  "ML",
                  "MT",
                  "MM",
                  "ME",
                  "MN",
                  "MP",
                  "MZ",
                  "MR",
                  "MS",
                  "MQ",
                  "MU",
                  "MW",
                  "MY",
                  "YT",
                  "NA",
                  "NC",
                  "NE",
                  "NF",
                  "NG",
                  "NI",
                  "NU",
                  "NL",
                  "NO",
                  "NP",
                  "NR",
                  "NZ",
                  "OM",
                  "PK",
                  "PA",
                  "PN",
                  "PE",
                  "PH",
                  "PW",
                  "PG",
                  "PL",
                  "PR",
                  "KP",
                  "PT",
                  "PY",
                  "PS",
                  "PF",
                  "QA",
                  "RE",
                  "RO",
                  "RU",
                  "RW",
                  "SA",
                  "SD",
                  "SN",
                  "SG",
                  "GS",
                  "SH",
                  "SJ",
                  "SB",
                  "SL",
                  "SV",
                  "SM",
                  "SO",
                  "PM",
                  "RS",
                  "SS",
                  "ST",
                  "SR",
                  "SK",
                  "SI",
                  "SE",
                  "SZ",
                  "SX",
                  "SC",
                  "SY",
                  "TC",
                  "TD",
                  "TG",
                  "TH",
                  "TJ",
                  "TK",
                  "TM",
                  "TL",
                  "TO",
                  "TT",
                  "TN",
                  "TR",
                  "TV",
                  "TW",
                  "TZ",
                  "UG",
                  "UA",
                  "UM",
                  "UY",
                  "US",
                  "UZ",
                  "VA",
                  "VC",
                  "VE",
                  "VG",
                  "VI",
                  "VN",
                  "VU",
                  "WF",
                  "WS",
                  "YE",
                  "ZA",
                  "ZM",
                  "ZW"
                ],
                "description": "Issuing country, ISO 3166-1 alpha-2"
              }
            }
          },
          "occupations": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1
            }
          },
          "addresses": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "street": {
                  "type": "string",
                  "minLength": 1
                },
                "city": {
                  "type": "string",
                  "minLength": 1
                },
                "state": {
                  "type": "string",
                  "minLength": 1
                },
                "country": {
                  "type": "string",
                  "enum": [
                    "AW",
                    "AF",
                    "AO",
                    "AI",
                    "AX",
                    "AL",
                    "AD",
                    "AE",
                    "AR",
                    "AM",
                    "AS",
                    "AQ",
                    "TF",
                    "AG",
                    "AU",
                    "AT",
                    "AZ",
                    "BI",
                    "BE",
                    "BJ",
                    "BQ",
                    "BF",
                    "BD",
                    "BG",
                    "BH",
                    "BS",
                    "BA",
                    "BL",
                    "BY",
                    "BZ",
                    "BM",
                    "BO",
                    "BR",
                    "BB",
                    "BN",
                    "BT",
                    "BV",
                    "BW",
                    "CF",
                    "CA",
                    "CC",
                    "CH",
                    "CL",
                    "CN",
                    "CI",
                    "CM",
                    "CD",
                    "CG",
                    "CK",
                    "CO",
                    "KM",
                    "CV",
                    "CR",
                    "CU",
                    "CW",
                    "CX",
                    "KY",
                    "CY",
                    "CZ",
                    "DE",
                    "DJ",
                    "DM",
                    "DK",
                    "DO",
                    "DZ",
                    "EC",
                    "EG",
                    "ER",
                    "EH",
                    "ES",
                    "EE",
                    "ET",
                    "FI",
                    "FJ",
                    "FK",
                    "FR",
                    "FO",
                    "FM",
                    "GA",
                    "GB",
                    "GE",
                    "GG",
                    "GH",
                    "GI",
                    "GN",
                    "GP",
                    "GM",
                    "GW",
                    "GQ",
                    "GR",
                    "GD",
                    "GL",
                    "GT",
                    "GF",
                    "GU",
                    "GY",
                    "HK",
                    "HM",
                    "HN",
                    "HR",
                    "HT",
                    "HU",
                    "ID",
                    "IM",
                    "IN",
                    "IO",
                    "IE",
                    "IR",
                    "IQ",
                    "IS",
                    "IL",
                    "IT",
                    "JM",
                    "JE",
                    "JO",
                    "JP",
                    "KZ",
                    "KE",
                    "KG",
                    "KH",
                    "KI",
                    "KN",
                    "KR",
                    "KW",
                    "LA",
                    "LB",
                    "LR",
                    "LY",
                    "LC",
                    "LI",
                    "LK",
                    "LS",
                    "LT",
                    "LU",
                    "LV",
                    "MO",
                    "MF",
                    "MA",
                    "MC",
                    "MD",
                    "MG",
                    "MV",
                    "MX",
                    "MH",
                    "MK",
                    "ML",
                    "MT",
                    "MM",
                    "ME",
                    "MN",
                    "MP",
                    "MZ",
                    "MR",
                    "MS",
                    "MQ",
                    "MU",
                    "MW",
                    "MY",
                    "YT",
                    "NA",
                    "NC",
                    "NE",
                    "NF",
                    "NG",
                    "NI",
                    "NU",
                    "NL",
                    "NO",
                    "NP",
                    "NR",
                    "NZ",
                    "OM",
                    "PK",
                    "PA",
                    "PN",
                    "PE",
                    "PH",
                    "PW",
                    "PG",
                    "PL",
                    "PR",
                    "KP",
                    "PT",
                    "PY",
                    "PS",
                    "PF",
                    "QA",
                    "RE",
                    "RO",
                    "RU",
                    "RW",
                    "SA",
                    "SD",
                    "SN",
                    "SG",
                    "GS",
                    "SH",
                    "SJ",
                    "SB",
                    "SL",
                    "SV",
                    "SM",
                    "SO",
                    "PM",
                    "RS",
                    "SS",
                    "ST",
                    "SR",
                    "SK",
                    "SI",
                    "SE",
                    "SZ",
                    "SX",
                    "SC",
                    "SY",
                    "TC",
                    "TD",
                    "TG",
                    "TH",
                    "TJ",
                    "TK",
                    "TM",
                    "TL",
                    "TO",
                    "TT",
                    "TN",
                    "TR",
                    "TV",
                    "TW",
                    "TZ",
                    "UG",
                    "UA",
                    "UM",
                    "UY",
                    "US",
                    "UZ",
                    "VA",
                    "VC",
                    "VE",
                    "VG",
                    "VI",
                    "VN",
                    "VU",
                    "WF",
                    "WS",
                    "YE",
                    "ZA",
                    "ZM",
                    "ZW"
                  ],
                  "description": "ISO 3166-1 alpha-2"
                },
                "zip": {
                  "type": "string",
                  "minLength": 1
                },
                "locality": {
                  "type": "string",
                  "minLength": 1
                }
              }
            }
          }
        },
        "required": [
          "userEmail"
        ],
        "description": "Request body for pre-supplying KYC data so the hosted form only asks for what is still missing. Send `userEmail` plus any subset of the provider-neutral KYC fields (name, birthdate, nationality, phone, employmentStatus, fundsOrigin, document, addresses, …) at the root; supplied fields are stored and skipped when the user later completes the hosted KYC form.",
        "example": {
          "userEmail": "maria@example.com",
          "firstName": "María",
          "lastName": "González",
          "phone": "+447700900123",
          "birthdate": "1990-01-31",
          "birthCountry": "ES",
          "nationality": "ES",
          "employmentStatus": "employed",
          "profession": "24",
          "fundsOrigin": "salary",
          "accountPurpose": "currencyExchange",
          "depositEstimation": {
            "minimum": 0,
            "maximum": 10000
          },
          "addresses": [
            {
              "street": "Calle Mayor 1",
              "city": "Madrid",
              "state": "Madrid",
              "zip": "28001",
              "country": "ES"
            }
          ]
        }
      },
      "SaveKYCProfileResponse": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean",
            "description": "Whether the profile data was stored successfully."
          },
          "providedFields": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Required profile fields now present after this call."
          },
          "missingFields": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Required profile fields the user must still complete in the hosted KYC form."
          }
        },
        "required": [
          "success",
          "providedFields",
          "missingFields"
        ],
        "description": "Response from POST /v1/kyc/profile: which required fields are now present and which are still missing."
      },
      "GetOpenBankingStatusRequest": {
        "type": "object",
        "properties": {
          "orderId": {
            "type": "string",
            "description": "Order id or deposit id (query/path; same identifier used when creating the Web Form)"
          }
        },
        "required": [
          "orderId"
        ]
      },
      "GetOpenBankingStatusResponse": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "orderId": {
            "type": "string",
            "description": "Order id or deposit id (field name is historical)"
          },
          "openbanking": {
            "type": "object",
            "properties": {
              "webFormId": {
                "type": "string"
              },
              "url": {
                "type": "string"
              },
              "status": {
                "type": "string"
              },
              "requestedAmount": {
                "type": "number"
              },
              "currency": {
                "type": "string"
              },
              "expiresAt": {
                "type": "string"
              },
              "lastUpdated": {
                "type": "string"
              },
              "webhookReceived": {
                "type": "boolean"
              },
              "lastWebhook": {
                "type": "object",
                "nullable": true,
                "properties": {
                  "timestamp": {
                    "type": "string"
                  },
                  "status": {
                    "type": "string"
                  },
                  "webFormId": {
                    "type": "string"
                  }
                },
                "required": [
                  "timestamp",
                  "status",
                  "webFormId"
                ]
              }
            },
            "required": [
              "webFormId",
              "url",
              "status",
              "requestedAmount",
              "currency",
              "expiresAt",
              "lastUpdated",
              "webhookReceived",
              "lastWebhook"
            ]
          },
          "metadata": {
            "type": "object",
            "properties": {
              "createdAt": {
                "type": "string",
                "description": "When the open-banking session record was created"
              },
              "lastStatusCheck": {
                "type": "string",
                "description": "Timestamp of the last status refresh"
              },
              "callbackCount": {
                "type": "number",
                "description": "Number of callbacks recorded for this session"
              }
            },
            "required": [
              "createdAt",
              "lastStatusCheck",
              "callbackCount"
            ]
          },
          "note": {
            "type": "string"
          }
        },
        "required": [
          "success",
          "orderId",
          "note"
        ]
      },
      "DepositHold": {
        "type": "object",
        "properties": {
          "holdId": {
            "type": "string",
            "description": "Deposit hold id.",
            "example": "dhold_3f1c9a7be2d84c01a5f6e9b2"
          },
          "accountId": {
            "type": "string",
            "description": "Account the deposit belongs to."
          },
          "depositId": {
            "type": "string",
            "nullable": true,
            "description": "The deposit the funds were credited to once released; `null` until then."
          },
          "reason": {
            "type": "string",
            "enum": [
              "travel_rule_origin"
            ],
            "description": "Why the deposit is held."
          },
          "status": {
            "type": "string",
            "enum": [
              "declaration_required",
              "declaring",
              "declared",
              "released"
            ],
            "description": "`declaration_required`: the deposit is held until you declare who sent it. `declaring`: a declaration is being filed; retry the same answer later if the call did not complete. `declared`: the declaration was filed; the deposit is credited as usual once released. `released`: the deposit is no longer held and no declaration from you is needed."
          },
          "amount": {
            "type": "string",
            "description": "Amount received, as a decimal string.",
            "example": "10.00000000"
          },
          "currency": {
            "type": "string",
            "description": "Currency received.",
            "example": "USDC"
          },
          "network": {
            "type": "string",
            "description": "Network the deposit arrived on.",
            "example": "BASE"
          },
          "heldAt": {
            "type": "string",
            "nullable": true,
            "description": "When the deposit was received (ISO 8601), if known."
          },
          "createdAt": {
            "type": "string",
            "description": "When the hold was recorded (ISO 8601)."
          },
          "deadline": {
            "nullable": true,
            "description": "Reserved: the time after which the deposit may be returned. Not currently provided."
          },
          "declaration": {
            "type": "object",
            "nullable": true,
            "properties": {
              "ownership": {
                "type": "string",
                "enum": [
                  "own",
                  "third_party"
                ]
              },
              "thirdParty": {
                "type": "object",
                "nullable": true,
                "properties": {
                  "name": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "First name of the person who sent the funds.",
                    "example": "Daniel"
                  },
                  "surname": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "Surname(s) of the person who sent the funds.",
                    "example": "García"
                  }
                },
                "required": [
                  "name",
                  "surname"
                ],
                "additionalProperties": false
              },
              "declaredBy": {
                "type": "string",
                "enum": [
                  "holder",
                  "workspace",
                  "ops",
                  "remembered"
                ],
                "description": "Who answered: the account holder, your workspace, our operations team on the holder’s behalf, or `remembered` — filed automatically because an earlier answer covered the same sending wallet for this account."
              },
              "declaredAt": {
                "type": "string",
                "description": "ISO 8601."
              }
            },
            "required": [
              "ownership",
              "thirdParty",
              "declaredBy",
              "declaredAt"
            ],
            "description": "The declaration filed, once there is one."
          }
        },
        "required": [
          "holdId",
          "accountId",
          "depositId",
          "reason",
          "status",
          "amount",
          "currency",
          "network",
          "heldAt",
          "createdAt",
          "deadline",
          "declaration"
        ],
        "additionalProperties": false,
        "description": "An inbound deposit that is held until its origin is declared."
      },
      "DepositHoldList": {
        "type": "object",
        "properties": {
          "holds": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "holdId": {
                  "type": "string",
                  "description": "Deposit hold id.",
                  "example": "dhold_3f1c9a7be2d84c01a5f6e9b2"
                },
                "accountId": {
                  "type": "string",
                  "description": "Account the deposit belongs to."
                },
                "depositId": {
                  "type": "string",
                  "nullable": true,
                  "description": "The deposit the funds were credited to once released; `null` until then."
                },
                "reason": {
                  "type": "string",
                  "enum": [
                    "travel_rule_origin"
                  ],
                  "description": "Why the deposit is held."
                },
                "status": {
                  "type": "string",
                  "enum": [
                    "declaration_required",
                    "declaring",
                    "declared",
                    "released"
                  ],
                  "description": "`declaration_required`: the deposit is held until you declare who sent it. `declaring`: a declaration is being filed; retry the same answer later if the call did not complete. `declared`: the declaration was filed; the deposit is credited as usual once released. `released`: the deposit is no longer held and no declaration from you is needed."
                },
                "amount": {
                  "type": "string",
                  "description": "Amount received, as a decimal string.",
                  "example": "10.00000000"
                },
                "currency": {
                  "type": "string",
                  "description": "Currency received.",
                  "example": "USDC"
                },
                "network": {
                  "type": "string",
                  "description": "Network the deposit arrived on.",
                  "example": "BASE"
                },
                "heldAt": {
                  "type": "string",
                  "nullable": true,
                  "description": "When the deposit was received (ISO 8601), if known."
                },
                "createdAt": {
                  "type": "string",
                  "description": "When the hold was recorded (ISO 8601)."
                },
                "deadline": {
                  "nullable": true,
                  "description": "Reserved: the time after which the deposit may be returned. Not currently provided."
                },
                "declaration": {
                  "type": "object",
                  "nullable": true,
                  "properties": {
                    "ownership": {
                      "type": "string",
                      "enum": [
                        "own",
                        "third_party"
                      ]
                    },
                    "thirdParty": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "name": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 100,
                          "description": "First name of the person who sent the funds.",
                          "example": "Daniel"
                        },
                        "surname": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 100,
                          "description": "Surname(s) of the person who sent the funds.",
                          "example": "García"
                        }
                      },
                      "required": [
                        "name",
                        "surname"
                      ],
                      "additionalProperties": false
                    },
                    "declaredBy": {
                      "type": "string",
                      "enum": [
                        "holder",
                        "workspace",
                        "ops",
                        "remembered"
                      ],
                      "description": "Who answered: the account holder, your workspace, our operations team on the holder’s behalf, or `remembered` — filed automatically because an earlier answer covered the same sending wallet for this account."
                    },
                    "declaredAt": {
                      "type": "string",
                      "description": "ISO 8601."
                    }
                  },
                  "required": [
                    "ownership",
                    "thirdParty",
                    "declaredBy",
                    "declaredAt"
                  ],
                  "description": "The declaration filed, once there is one."
                }
              },
              "required": [
                "holdId",
                "accountId",
                "depositId",
                "reason",
                "status",
                "amount",
                "currency",
                "network",
                "heldAt",
                "createdAt",
                "deadline",
                "declaration"
              ],
              "additionalProperties": false,
              "description": "An inbound deposit that is held until its origin is declared."
            }
          }
        },
        "required": [
          "holds"
        ],
        "additionalProperties": false,
        "description": "Deposit holds of your workspace (at most 100)."
      },
      "DeclareDepositOriginBody": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "ownership": {
                "type": "string",
                "enum": [
                  "own"
                ],
                "description": "The sending wallet belongs to the account holder."
              }
            },
            "required": [
              "ownership"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "ownership": {
                "type": "string",
                "enum": [
                  "third_party"
                ],
                "description": "The funds were sent by someone else."
              },
              "thirdParty": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "First name of the person who sent the funds.",
                    "example": "Daniel"
                  },
                  "surname": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "Surname(s) of the person who sent the funds.",
                    "example": "García"
                  },
                  "address": {
                    "type": "object",
                    "properties": {
                      "street": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 200,
                        "description": "Street and number of the sender’s address.",
                        "example": "Calle Mayor 1"
                      },
                      "city": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 200,
                        "description": "City of the sender’s address.",
                        "example": "Madrid"
                      },
                      "zip": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 200,
                        "description": "Postal code of the sender’s address.",
                        "example": "28013"
                      },
                      "countryCode": {
                        "type": "string",
                        "pattern": "^[A-Z]{2}$",
                        "description": "Country of the sender’s address (ISO 3166-1 alpha-2, e.g. `ES`).",
                        "example": "ES"
                      }
                    },
                    "required": [
                      "street",
                      "city",
                      "zip",
                      "countryCode"
                    ],
                    "additionalProperties": false,
                    "description": "Postal address of the person who sent the funds."
                  }
                },
                "required": [
                  "name",
                  "surname",
                  "address"
                ],
                "additionalProperties": false
              }
            },
            "required": [
              "ownership",
              "thirdParty"
            ],
            "additionalProperties": false
          }
        ],
        "description": "Who owns the wallet the deposit came from (Travel Rule origin).",
        "example": {
          "ownership": "own"
        }
      },
      "ExternalMockKycRequest": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "minLength": 1,
            "maxLength": 254,
            "format": "email",
            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
            "description": "Email address"
          },
          "firstName": {
            "type": "string"
          },
          "lastName": {
            "type": "string"
          },
          "country": {
            "type": "string",
            "minLength": 2,
            "maxLength": 2
          }
        },
        "required": [
          "email"
        ],
        "additionalProperties": false
      },
      "ExternalMockKybRequest": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "minLength": 1,
            "maxLength": 254,
            "format": "email",
            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
            "description": "Email address"
          },
          "countryOfIncorporation": {
            "type": "string",
            "minLength": 2,
            "maxLength": 2
          }
        },
        "required": [
          "email"
        ],
        "additionalProperties": false
      },
      "ExternalPayoutRailNameVerificationRequest": {
        "type": "object",
        "properties": {
          "accountIdentifier": {
            "type": "string",
            "minLength": 1,
            "description": "IBAN or account number of the beneficiary the outcome applies to. Omit to set the default outcome for every beneficiary without a specific one."
          },
          "result": {
            "type": "string",
            "enum": [
              "MATCH",
              "CLOSE_MATCH",
              "NO_MATCH",
              "PROVIDER_ERROR"
            ],
            "description": "Outcome the simulated rail returns: `MATCH` clears the payout, `CLOSE_MATCH` and `NO_MATCH` hold it for review, `PROVIDER_ERROR` makes the check unavailable"
          }
        },
        "required": [
          "result"
        ],
        "additionalProperties": false
      },
      "ExternalPayoutRailPaymentNoticeRequest": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string",
            "enum": [
              "CREATED",
              "COMPLIANCE_REVIEW",
              "MEMBER_REVIEW",
              "PROCESSING",
              "COMPLETED",
              "RETURNED",
              "REJECTED",
              "FAILED"
            ],
            "description": "Payout status the notice announces. A terminal status cannot be changed afterwards; repeating the current status re-emits the same notice."
          }
        },
        "required": [
          "status"
        ],
        "additionalProperties": false
      },
      "ListPendingPaymentsRequest": {
        "type": "object",
        "properties": {
          "currency": {
            "type": "string",
            "description": "Optional currency code to filter the items",
            "example": "EUR"
          },
          "minAmount": {
            "type": "number",
            "minimum": 0
          },
          "maxAmount": {
            "type": "number",
            "minimum": 0
          },
          "from": {
            "type": "integer",
            "minimum": 0
          },
          "to": {
            "type": "integer",
            "minimum": 0
          },
          "userEmail": {
            "type": "string",
            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
            "description": "Email of the user making the request. For a business payer this matches operations under any of its identities — the representative email and the organisation account — so listings stay complete across both.",
            "example": "user@example.com"
          },
          "search": {
            "type": "string",
            "description": "General search (e.g. email or text). When provided, backend may use it for userEmail or text search."
          },
          "limit": {
            "type": "number",
            "minimum": 0
          },
          "page": {
            "type": "number",
            "minimum": 0
          },
          "name": {
            "type": "string",
            "description": "Filter by counterparty name (case-insensitive partial match)",
            "example": "John Doe"
          },
          "reference": {
            "type": "string",
            "description": "Filter by reference or ID (partial match)",
            "example": "REF123"
          },
          "iban": {
            "type": "string",
            "description": "Filter by IBAN (case-insensitive partial match)",
            "example": "ES9121000418450200051332"
          },
          "ibanCountry": {
            "type": "string",
            "description": "Filter by IBAN country code (e.g., ES, DE)",
            "example": "ES"
          },
          "amount": {
            "type": "number",
            "minimum": 0,
            "exclusiveMinimum": true,
            "description": "Filter by exact amount",
            "example": 1000
          },
          "readyToLinkOnly": {
            "anyOf": [
              {
                "type": "boolean"
              },
              {
                "type": "string"
              }
            ],
            "description": "If true, only unlinked transfers with readyToLinkAt set (queue ready for linking)."
          },
          "typeFilter": {
            "type": "string",
            "enum": [
              "compliance",
              "source_of_funds",
              "prelink",
              "screening",
              "monitoring",
              "normal",
              ""
            ],
            "description": "Filter by transfer type: screening (identity hold), monitoring (fiat/crypto), source_of_funds, normal (no compliance hold), prelink, or compliance (screening+monitoring combined)."
          },
          "accountId": {
            "type": "string",
            "description": "Optional account id (email) within the calling workspace. When provided, the proposedByMe / sofUploadedByMe / screening.submittedByMe flags are computed relative to that account. Ignored on the authenticated app API, which uses the signed-in account.",
            "example": "ops@example.com"
          }
        },
        "additionalProperties": false
      },
      "ListPendingPaymentsResponse": {
        "type": "object",
        "properties": {
          "transfers": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "description": "Transfer identifier — use this to call /link, /create-deposit, or /create-order"
                },
                "amount": {
                  "type": "number",
                  "description": "Amount received"
                },
                "currency": {
                  "type": "string",
                  "description": "Currency (ISO 4217, e.g. EUR)"
                },
                "date": {
                  "type": "string",
                  "description": "Date the payment was received (ISO 8601)"
                },
                "timestamp": {
                  "type": "number",
                  "description": "Transfer date as epoch milliseconds — use this for sorting/display; the `date` string is locale-formatted and must not be re-parsed"
                },
                "reference": {
                  "type": "string",
                  "nullable": true,
                  "description": "Payment reference text provided by the sender"
                },
                "counterparty": {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string",
                      "description": "Sender name"
                    },
                    "iban": {
                      "type": "string",
                      "description": "Sender IBAN"
                    }
                  },
                  "description": "Basic sender information"
                },
                "complianceHoldReason": {
                  "type": "string",
                  "nullable": true,
                  "enum": [
                    "source_of_funds",
                    "screening",
                    "fiat_monitoring",
                    "crypto_monitoring"
                  ]
                },
                "complianceDocuments": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "path": {
                        "type": "string"
                      },
                      "fileName": {
                        "type": "string"
                      },
                      "uploadedBy": {
                        "type": "string"
                      },
                      "uploadedByKind": {
                        "type": "string",
                        "enum": [
                          "operator",
                          "workspace"
                        ]
                      },
                      "uploadedAt": {
                        "type": "number"
                      },
                      "comment": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "path"
                    ]
                  }
                },
                "paymentMethod": {
                  "type": "object",
                  "nullable": true,
                  "properties": {
                    "amountLimit": {
                      "type": "number"
                    },
                    "amountLimitCurrency": {
                      "type": "string"
                    },
                    "amountProcessed": {
                      "type": "number"
                    },
                    "isBlocked": {
                      "type": "boolean"
                    }
                  }
                },
                "attemptedLinks": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "entityId": {
                        "type": "string"
                      },
                      "entityType": {
                        "type": "string",
                        "enum": [
                          "order",
                          "deposit"
                        ]
                      },
                      "attemptedAt": {
                        "type": "number"
                      },
                      "reason": {
                        "type": "string"
                      },
                      "errorId": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "entityId",
                      "entityType",
                      "attemptedAt",
                      "reason"
                    ]
                  }
                },
                "reviewReason": {
                  "type": "string",
                  "nullable": true
                },
                "senderEnrichmentSubmitted": {
                  "type": "boolean"
                },
                "refundStatus": {
                  "type": "string",
                  "enum": [
                    "pending_approval",
                    "returning",
                    "returned",
                    "failed"
                  ],
                  "description": "Refund state of this payment. Only present while a refund is in play — a payment with no refund in progress carries no such field. `pending_approval`: a refund has been requested and the amount is held; nothing has been sent to the payer. `returning`: the return has been submitted and is awaiting confirmation — intent, not proof, so do not treat the payer as repaid. `returned`: confirmed, the payer has the money back; final. `failed`: the return was rejected and the payment stays held; final. Only `returned` proves the money reached the payer. While this field is present the payment cannot be linked to an order or a deposit."
                },
                "preLinked": {
                  "type": "object",
                  "nullable": true,
                  "properties": {
                    "type": {
                      "type": "string",
                      "enum": [
                        "order",
                        "deposit"
                      ]
                    },
                    "id": {
                      "type": "string"
                    },
                    "confidence": {
                      "type": "number"
                    },
                    "note": {
                      "type": "string"
                    },
                    "timestamp": {
                      "type": "number"
                    },
                    "reasonCode": {
                      "type": "string",
                      "enum": [
                        "joint_account",
                        "wrong_name_on_payment",
                        "wrong_name_on_order_or_deposit"
                      ]
                    },
                    "isProposal": {
                      "type": "boolean"
                    },
                    "proposedBy": {
                      "type": "string"
                    },
                    "proposedByMe": {
                      "type": "boolean"
                    },
                    "hasDocuments": {
                      "type": "boolean"
                    }
                  },
                  "required": [
                    "type",
                    "id",
                    "confidence",
                    "isProposal",
                    "proposedByMe",
                    "hasDocuments"
                  ]
                },
                "sofUploadedByMe": {
                  "type": "boolean"
                },
                "sofLastUploadedAt": {
                  "type": "number"
                },
                "screening": {
                  "type": "object",
                  "nullable": true,
                  "properties": {
                    "submitted": {
                      "type": "boolean"
                    },
                    "submittedBy": {
                      "type": "string"
                    },
                    "submittedByMe": {
                      "type": "boolean"
                    },
                    "submittedAt": {
                      "type": "number"
                    }
                  },
                  "required": [
                    "submitted",
                    "submittedByMe"
                  ]
                }
              },
              "required": [
                "id",
                "amount",
                "currency"
              ]
            }
          },
          "total": {
            "type": "number",
            "description": "Total count of pending transfers"
          },
          "page": {
            "type": "number"
          },
          "limit": {
            "type": "number"
          }
        },
        "required": [
          "transfers"
        ]
      },
      "PendingPaymentTransfer": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Transfer identifier — use this to call /link, /create-deposit, or /create-order"
          },
          "amount": {
            "type": "number",
            "description": "Amount received"
          },
          "currency": {
            "type": "string",
            "description": "Currency (ISO 4217, e.g. EUR)"
          },
          "date": {
            "type": "string",
            "description": "Date the payment was received (ISO 8601)"
          },
          "timestamp": {
            "type": "number",
            "description": "Transfer date as epoch milliseconds — use this for sorting/display; the `date` string is locale-formatted and must not be re-parsed"
          },
          "reference": {
            "type": "string",
            "nullable": true,
            "description": "Payment reference text provided by the sender"
          },
          "counterparty": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "description": "Sender name"
              },
              "iban": {
                "type": "string",
                "description": "Sender IBAN"
              }
            },
            "description": "Basic sender information"
          }
        },
        "required": [
          "id",
          "amount",
          "currency"
        ]
      },
      "CreateDepositFromTransferRequest": {
        "allOf": [
          {
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "externalReference": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 128,
                    "description": "Your own reference for this deposit. Stored as-is and returned on create, detail and list, so you can look the deposit up by it after a network timeout instead of retrying blind. Not interpreted by VirtuaBroker and not shown to the payer — for the payer's transfer reference use depositInfo.referenceCode.",
                    "examples": [
                      "partner-ref-0001",
                      "inv_2026_00417"
                    ]
                  },
                  "userData": {
                    "oneOf": [
                      {
                        "type": "object",
                        "properties": {
                          "userType": {
                            "type": "string",
                            "enum": [
                              "individual"
                            ]
                          },
                          "firstName": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 50,
                            "description": "First name of the user making the deposit (or representative for business)",
                            "examples": [
                              "John",
                              "Alice",
                              "Bob"
                            ]
                          },
                          "lastName": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "Last name of the user making the deposit (or representative for business)",
                            "examples": [
                              "Doe",
                              "Smith",
                              "Johnson"
                            ]
                          },
                          "userEmail": {
                            "type": "string",
                            "maxLength": 254,
                            "format": "email",
                            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                            "description": "Email of the user making the deposit",
                            "examples": [
                              "user@virtuabroker.com",
                              "john.doe@example.com",
                              "alice@example.com"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "maxLength": 150,
                            "description": "Address of the user making the deposit",
                            "examples": [
                              "123 Main St, Anytown, ES",
                              "456 Elm St, Anytown, ES",
                              "789 Oak St, Anytown, ES"
                            ]
                          },
                          "taxDocumentType": {
                            "type": "string",
                            "maxLength": 50,
                            "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                            "examples": [
                              "CC",
                              "NIT",
                              "CE",
                              "NIF",
                              "Other"
                            ]
                          },
                          "taxId": {
                            "type": "string",
                            "maxLength": 30,
                            "description": "Tax ID of the user making the deposit",
                            "examples": [
                              "123-45-6789",
                              "987-65-4321",
                              "111-22-3333"
                            ]
                          },
                          "country": {
                            "type": "string",
                            "enum": [
                              "US",
                              "CA",
                              "GB",
                              "DE",
                              "FR",
                              "AU",
                              "JP",
                              "KR",
                              "SE",
                              "NO",
                              "DK",
                              "FI",
                              "NL",
                              "BE",
                              "CH",
                              "AT",
                              "NZ",
                              "SG",
                              "IE",
                              "LU",
                              "PT",
                              "ES",
                              "IT",
                              "GR",
                              "CZ",
                              "PL",
                              "HU",
                              "SK",
                              "SI",
                              "EE",
                              "LT",
                              "LV",
                              "IS",
                              "MT",
                              "CY",
                              "HR",
                              "RO",
                              "BG",
                              "BR",
                              "AR",
                              "CL",
                              "MX",
                              "CO",
                              "PE",
                              "PA",
                              "UY",
                              "BO",
                              "ZA",
                              "NG",
                              "KE",
                              "GH",
                              "TZ",
                              "UG",
                              "RW",
                              "MW",
                              "ZM",
                              "BW",
                              "CD",
                              "CI",
                              "CM",
                              "IL",
                              "AE",
                              "QA",
                              "SA",
                              "OM",
                              "KW",
                              "BH",
                              "MY",
                              "PH",
                              "TH",
                              "VN",
                              "ID",
                              "IN",
                              "LK",
                              "NP",
                              "BD",
                              "PK",
                              "EG",
                              "MA",
                              "DZ",
                              "TN",
                              "JO",
                              "LB",
                              "TR",
                              "KH",
                              "MM",
                              "LA",
                              "EN",
                              "BT",
                              "VE",
                              "TW",
                              "HK",
                              "CN"
                            ],
                            "description": "Country code of the user making the deposit",
                            "examples": [
                              "ES",
                              "US",
                              "GB"
                            ]
                          },
                          "state": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "State of the user making the deposit",
                            "examples": [
                              "Madrid",
                              "New York",
                              "London"
                            ]
                          },
                          "postalCode": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 30,
                            "description": "Postal code of the user making the deposit",
                            "examples": [
                              "12345",
                              "67890",
                              "abcde"
                            ]
                          },
                          "city": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "City of the user making the deposit",
                            "examples": [
                              "Madrid",
                              "New York",
                              "London"
                            ]
                          },
                          "dob": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 30,
                            "description": "Date of birth of the user making the deposit",
                            "examples": [
                              "1990-01-01",
                              "1995-05-15",
                              "1988-12-31"
                            ]
                          },
                          "phoneNumber": {
                            "type": "string",
                            "maxLength": 30,
                            "description": "Phone number of the user making the deposit",
                            "examples": [
                              "+447700900123",
                              "+447700900456",
                              "+447700900789"
                            ]
                          },
                          "kycId": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 300,
                            "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                            "examples": [
                              "kyc-12345",
                              "kyc-67890",
                              "kyc-abcde"
                            ]
                          },
                          "activity": {
                            "type": "string",
                            "description": "Activity of the user making the deposit",
                            "examples": [
                              "worker",
                              "business",
                              "student"
                            ]
                          }
                        },
                        "required": [
                          "userType",
                          "firstName",
                          "userEmail",
                          "country"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "userType": {
                            "type": "string",
                            "enum": [
                              "business"
                            ]
                          },
                          "businessName": {
                            "type": "string",
                            "maxLength": 150,
                            "description": "Business name (required when userType is business)",
                            "examples": [
                              "Acme Corp",
                              "Tech Solutions Inc",
                              "Global Services Ltd"
                            ]
                          },
                          "firstName": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 50,
                            "description": "First name of the user making the deposit (or representative for business)",
                            "examples": [
                              "John",
                              "Alice",
                              "Bob"
                            ]
                          },
                          "userEmail": {
                            "type": "string",
                            "maxLength": 254,
                            "format": "email",
                            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                            "description": "Email of the user making the deposit",
                            "examples": [
                              "user@virtuabroker.com",
                              "john.doe@example.com",
                              "alice@example.com"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "maxLength": 150,
                            "description": "Address of the user making the deposit",
                            "examples": [
                              "123 Main St, Anytown, ES",
                              "456 Elm St, Anytown, ES",
                              "789 Oak St, Anytown, ES"
                            ]
                          },
                          "taxDocumentType": {
                            "type": "string",
                            "maxLength": 50,
                            "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                            "examples": [
                              "CC",
                              "NIT",
                              "CE",
                              "NIF",
                              "Other"
                            ]
                          },
                          "taxId": {
                            "type": "string",
                            "maxLength": 30,
                            "description": "Tax ID of the user making the deposit",
                            "examples": [
                              "123-45-6789",
                              "987-65-4321",
                              "111-22-3333"
                            ]
                          },
                          "country": {
                            "type": "string",
                            "enum": [
                              "US",
                              "CA",
                              "GB",
                              "DE",
                              "FR",
                              "AU",
                              "JP",
                              "KR",
                              "SE",
                              "NO",
                              "DK",
                              "FI",
                              "NL",
                              "BE",
                              "CH",
                              "AT",
                              "NZ",
                              "SG",
                              "IE",
                              "LU",
                              "PT",
                              "ES",
                              "IT",
                              "GR",
                              "CZ",
                              "PL",
                              "HU",
                              "SK",
                              "SI",
                              "EE",
                              "LT",
                              "LV",
                              "IS",
                              "MT",
                              "CY",
                              "HR",
                              "RO",
                              "BG",
                              "BR",
                              "AR",
                              "CL",
                              "MX",
                              "CO",
                              "PE",
                              "PA",
                              "UY",
                              "BO",
                              "ZA",
                              "NG",
                              "KE",
                              "GH",
                              "TZ",
                              "UG",
                              "RW",
                              "MW",
                              "ZM",
                              "BW",
                              "CD",
                              "CI",
                              "CM",
                              "IL",
                              "AE",
                              "QA",
                              "SA",
                              "OM",
                              "KW",
                              "BH",
                              "MY",
                              "PH",
                              "TH",
                              "VN",
                              "ID",
                              "IN",
                              "LK",
                              "NP",
                              "BD",
                              "PK",
                              "EG",
                              "MA",
                              "DZ",
                              "TN",
                              "JO",
                              "LB",
                              "TR",
                              "KH",
                              "MM",
                              "LA",
                              "EN",
                              "BT",
                              "VE",
                              "TW",
                              "HK",
                              "CN"
                            ],
                            "description": "Country code of the user making the deposit",
                            "examples": [
                              "ES",
                              "US",
                              "GB"
                            ]
                          },
                          "state": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "State of the user making the deposit",
                            "examples": [
                              "Madrid",
                              "New York",
                              "London"
                            ]
                          },
                          "postalCode": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 30,
                            "description": "Postal code of the user making the deposit",
                            "examples": [
                              "12345",
                              "67890",
                              "abcde"
                            ]
                          },
                          "city": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "City of the user making the deposit",
                            "examples": [
                              "Madrid",
                              "New York",
                              "London"
                            ]
                          },
                          "dob": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 30,
                            "description": "Date of birth of the user making the deposit",
                            "examples": [
                              "1990-01-01",
                              "1995-05-15",
                              "1988-12-31"
                            ]
                          },
                          "phoneNumber": {
                            "type": "string",
                            "maxLength": 30,
                            "description": "Phone number of the user making the deposit",
                            "examples": [
                              "+447700900123",
                              "+447700900456",
                              "+447700900789"
                            ]
                          },
                          "kycId": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 300,
                            "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                            "examples": [
                              "kyc-12345",
                              "kyc-67890",
                              "kyc-abcde"
                            ]
                          },
                          "activity": {
                            "type": "string",
                            "description": "Activity of the user making the deposit",
                            "examples": [
                              "worker",
                              "business",
                              "student"
                            ]
                          }
                        },
                        "required": [
                          "userType",
                          "businessName",
                          "firstName",
                          "userEmail",
                          "country"
                        ]
                      }
                    ],
                    "description": "User data of the person/company making the deposit"
                  },
                  "userDataId": {
                    "type": "string",
                    "description": "Account ID of the person/company making the deposit",
                    "examples": [
                      "d290f1ee-6c54-4b01-90e6-d701748f0851"
                    ]
                  },
                  "originCountry": {
                    "type": "string",
                    "minLength": 2,
                    "maxLength": 2,
                    "description": "Collection country (ISO-3166 alpha-2) for a multi-country payin currency (CFA zones). Must be a valid collection country for the currency; omitted ⇒ the default collection country is used.",
                    "examples": [
                      "CI",
                      "SN",
                      "CM"
                    ]
                  },
                  "originNetworkId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 64,
                    "description": "Collection network the payer will pay from, for a mobile-money payin corridor. Must be one of the ids returned by GET /v1/currencies/{currency}/networks?rail={rail}&rampType=deposit — passing the same rail, and the same country where the currency is collected across several — not free text. Required only where the corridor offers more than one network; a single-network corridor resolves it automatically and needs no value.",
                    "examples": [
                      "3f9a1c7e-2b4d-4e8a-9c1f-0a1b2c3d4e5f"
                    ]
                  }
                }
              },
              {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "exclusiveMinimum": true,
                        "description": "Amount to be deposited",
                        "examples": [
                          100,
                          1000,
                          5000,
                          10000
                        ]
                      },
                      "currency": {
                        "type": "string",
                        "enum": [
                          "USDC",
                          "USDT",
                          "CUSD",
                          "BTC",
                          "ETH",
                          "POL",
                          "SOL",
                          "TRX",
                          "AVAX",
                          "XRP",
                          "BNB"
                        ],
                        "description": "Currency of the deposit",
                        "examples": [
                          "USDC",
                          "CUSD",
                          "ETH"
                        ]
                      },
                      "rail": {
                        "anyOf": [
                          {
                            "type": "string",
                            "enum": [
                              "BTC",
                              "ETH",
                              "MATIC",
                              "CELO",
                              "SOLANA",
                              "TRON",
                              "BSC",
                              "XRP",
                              "ARBITRUM",
                              "OPTIMISM",
                              "AVALANCHE",
                              "BASE",
                              "CARDANO"
                            ]
                          },
                          {
                            "type": "string",
                            "enum": [
                              "BALANCE"
                            ]
                          }
                        ]
                      }
                    },
                    "required": [
                      "amount",
                      "currency",
                      "rail"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "exclusiveMinimum": true,
                        "description": "Amount to be deposited",
                        "examples": [
                          100,
                          1000,
                          5000,
                          10000
                        ]
                      },
                      "currency": {
                        "type": "string",
                        "enum": [
                          "EUR",
                          "USD",
                          "GBP",
                          "BRL",
                          "MXN",
                          "ARS",
                          "COP",
                          "PEN",
                          "NGN",
                          "KES",
                          "TZS",
                          "UGX",
                          "RWF",
                          "MWK",
                          "ZMW",
                          "XOF",
                          "XAF",
                          "BWP"
                        ],
                        "description": "Currency of the deposit",
                        "examples": [
                          "EUR",
                          "BRL"
                        ]
                      },
                      "rail": {
                        "type": "string",
                        "enum": [
                          "BALANCE",
                          "SEPA",
                          "BTC",
                          "ETH",
                          "MATIC",
                          "POLYGON",
                          "CELO",
                          "TRON",
                          "SOLANA",
                          "ARBITRUM",
                          "OPTIMISM",
                          "AVALANCHE",
                          "BSC",
                          "BASE",
                          "XRP",
                          "PIX_BR",
                          "UPI",
                          "IMPS",
                          "TRY_BANK_TRANSFER",
                          "AED_BANK_TRANSFER",
                          "SPEI",
                          "IDR_BANK_TRANSFER",
                          "CREDIT_CARD",
                          "THAI_QR",
                          "VIET_QR",
                          "GCASH",
                          "ARGENTINA_BANK_TRANSFER",
                          "PSE",
                          "CLABE",
                          "PIX",
                          "BANK_DEPOSIT_COL",
                          "BANK_DEPOSIT_AR",
                          "BANK_DEPOSIT_CL",
                          "BANK_DEPOSIT_PE",
                          "BANK_DEPOSIT_BO",
                          "BANK_DEPOSIT_BR",
                          "BANK_DEPOSIT_NG",
                          "BANK_DEPOSIT_KE",
                          "BANK_DEPOSIT_GH",
                          "BANK_DEPOSIT_ZA",
                          "BANK_DEPOSIT_TZ",
                          "BANK_DEPOSIT_UG",
                          "BANK_DEPOSIT_RW",
                          "BANK_DEPOSIT_MW",
                          "BANK_DEPOSIT_ZM",
                          "BANK_DEPOSIT_BW",
                          "BANK_DEPOSIT_CD",
                          "BANK_DEPOSIT_XOF",
                          "BANK_DEPOSIT_XAF",
                          "MOBILE_MONEY_NG",
                          "MOBILE_MONEY_KE",
                          "MOBILE_MONEY_GH",
                          "MOBILE_MONEY_ZA",
                          "MOBILE_MONEY_TZ",
                          "MOBILE_MONEY_UG",
                          "MOBILE_MONEY_RW",
                          "MOBILE_MONEY_MW",
                          "MOBILE_MONEY_ZM",
                          "MOBILE_MONEY_BW",
                          "MOBILE_MONEY_CD",
                          "MOBILE_MONEY_XOF",
                          "MOBILE_MONEY_XAF",
                          "ACH_US",
                          "GBP_BANK_TRANSFER"
                        ],
                        "description": "Rail for the deposit for fiat deposits",
                        "examples": [
                          "SEPA",
                          "MATIC"
                        ]
                      }
                    },
                    "required": [
                      "currency"
                    ]
                  }
                ]
              }
            ],
            "description": "Request schema for creating a deposit. Must provide either userData or userDataId."
          },
          {
            "type": "object",
            "properties": {
              "transferId": {
                "type": "string",
                "description": "Transfer ID without provider prefix (from path parameter)",
                "example": "12345"
              }
            },
            "required": [
              "transferId"
            ]
          }
        ]
      },
      "CreateOrderFromTransferRequest": {
        "allOf": [
          {
            "type": "object",
            "properties": {
              "quoteId": {
                "type": "string",
                "format": "uuid",
                "description": "The unique identifier of the created quote",
                "examples": [
                  "123e4567-e89b-12d3-a456-426614174000",
                  "987f6543-a21c-45d6-b789-012345678901"
                ]
              },
              "accountId": {
                "type": "string",
                "minLength": 1,
                "description": "Execute the order on behalf of this managed customer (the customerId from /v1/banking/customers). The customer becomes the order origin — the party whose balance/identity the movement belongs to. Must belong to your workspace; a foreign or unknown id is rejected.",
                "examples": [
                  "jane.doe@example.com"
                ]
              },
              "destination": {
                "type": "object",
                "properties": {
                  "contactId": {
                    "type": "string",
                    "minLength": 1,
                    "description": "A saved contact of the on-behalf-of customer — the party receiving the funds."
                  },
                  "contactEmail": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 254,
                    "format": "email",
                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                    "description": "Email identifying the receiving party (alternative to contactId)."
                  },
                  "addressId": {
                    "type": "string",
                    "minLength": 1,
                    "description": "A saved destination method (payout address) of the on-behalf-of customer; its transfer details become the payout destination."
                  }
                },
                "additionalProperties": false,
                "description": "Structured destination for on-behalf-of orders: pay out to a managed contact and/or one of the customer saved payout addresses. Requires accountId."
              },
              "originCountry": {
                "type": "string",
                "minLength": 2,
                "maxLength": 2,
                "description": "Collection country (ISO-3166 alpha-2) for a multi-country payin currency (CFA zones). Must be a valid collection country for the origin currency; omitted ⇒ the default collection country is used.",
                "examples": [
                  "CI",
                  "SN",
                  "CM"
                ]
              },
              "userData": {
                "oneOf": [
                  {
                    "type": "object",
                    "properties": {
                      "userType": {
                        "type": "string",
                        "enum": [
                          "individual"
                        ]
                      },
                      "firstName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 50,
                        "description": "First name of the user making the deposit (or representative for business)",
                        "examples": [
                          "John",
                          "Alice",
                          "Bob"
                        ]
                      },
                      "lastName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "Last name of the user making the deposit (or representative for business)",
                        "examples": [
                          "Doe",
                          "Smith",
                          "Johnson"
                        ]
                      },
                      "userEmail": {
                        "type": "string",
                        "maxLength": 254,
                        "format": "email",
                        "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                        "description": "Email of the user making the deposit",
                        "examples": [
                          "user@virtuabroker.com",
                          "john.doe@example.com",
                          "alice@example.com"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "maxLength": 150,
                        "description": "Address of the user making the deposit",
                        "examples": [
                          "123 Main St, Anytown, ES",
                          "456 Elm St, Anytown, ES",
                          "789 Oak St, Anytown, ES"
                        ]
                      },
                      "taxDocumentType": {
                        "type": "string",
                        "maxLength": 50,
                        "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                        "examples": [
                          "CC",
                          "NIT",
                          "CE",
                          "NIF",
                          "Other"
                        ]
                      },
                      "taxId": {
                        "type": "string",
                        "maxLength": 30,
                        "description": "Tax ID of the user making the deposit",
                        "examples": [
                          "123-45-6789",
                          "987-65-4321",
                          "111-22-3333"
                        ]
                      },
                      "country": {
                        "type": "string",
                        "enum": [
                          "US",
                          "CA",
                          "GB",
                          "DE",
                          "FR",
                          "AU",
                          "JP",
                          "KR",
                          "SE",
                          "NO",
                          "DK",
                          "FI",
                          "NL",
                          "BE",
                          "CH",
                          "AT",
                          "NZ",
                          "SG",
                          "IE",
                          "LU",
                          "PT",
                          "ES",
                          "IT",
                          "GR",
                          "CZ",
                          "PL",
                          "HU",
                          "SK",
                          "SI",
                          "EE",
                          "LT",
                          "LV",
                          "IS",
                          "MT",
                          "CY",
                          "HR",
                          "RO",
                          "BG",
                          "BR",
                          "AR",
                          "CL",
                          "MX",
                          "CO",
                          "PE",
                          "PA",
                          "UY",
                          "BO",
                          "ZA",
                          "NG",
                          "KE",
                          "GH",
                          "TZ",
                          "UG",
                          "RW",
                          "MW",
                          "ZM",
                          "BW",
                          "CD",
                          "CI",
                          "CM",
                          "IL",
                          "AE",
                          "QA",
                          "SA",
                          "OM",
                          "KW",
                          "BH",
                          "MY",
                          "PH",
                          "TH",
                          "VN",
                          "ID",
                          "IN",
                          "LK",
                          "NP",
                          "BD",
                          "PK",
                          "EG",
                          "MA",
                          "DZ",
                          "TN",
                          "JO",
                          "LB",
                          "TR",
                          "KH",
                          "MM",
                          "LA",
                          "EN",
                          "BT",
                          "VE",
                          "TW",
                          "HK",
                          "CN"
                        ],
                        "description": "Country code of the user making the deposit",
                        "examples": [
                          "ES",
                          "US",
                          "GB"
                        ]
                      },
                      "state": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "State of the user making the deposit",
                        "examples": [
                          "Madrid",
                          "New York",
                          "London"
                        ]
                      },
                      "postalCode": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 30,
                        "description": "Postal code of the user making the deposit",
                        "examples": [
                          "12345",
                          "67890",
                          "abcde"
                        ]
                      },
                      "city": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "City of the user making the deposit",
                        "examples": [
                          "Madrid",
                          "New York",
                          "London"
                        ]
                      },
                      "dob": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 30,
                        "description": "Date of birth of the user making the deposit",
                        "examples": [
                          "1990-01-01",
                          "1995-05-15",
                          "1988-12-31"
                        ]
                      },
                      "phoneNumber": {
                        "type": "string",
                        "maxLength": 30,
                        "description": "Phone number of the user making the deposit",
                        "examples": [
                          "+447700900123",
                          "+447700900456",
                          "+447700900789"
                        ]
                      },
                      "kycId": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 300,
                        "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                        "examples": [
                          "kyc-12345",
                          "kyc-67890",
                          "kyc-abcde"
                        ]
                      },
                      "activity": {
                        "type": "string",
                        "description": "Activity of the user making the deposit",
                        "examples": [
                          "worker",
                          "business",
                          "student"
                        ]
                      }
                    },
                    "required": [
                      "userType",
                      "firstName",
                      "userEmail",
                      "country"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "userType": {
                        "type": "string",
                        "enum": [
                          "business"
                        ]
                      },
                      "businessName": {
                        "type": "string",
                        "maxLength": 150,
                        "description": "Business name (required when userType is business)",
                        "examples": [
                          "Acme Corp",
                          "Tech Solutions Inc",
                          "Global Services Ltd"
                        ]
                      },
                      "firstName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 50,
                        "description": "First name of the user making the deposit (or representative for business)",
                        "examples": [
                          "John",
                          "Alice",
                          "Bob"
                        ]
                      },
                      "userEmail": {
                        "type": "string",
                        "maxLength": 254,
                        "format": "email",
                        "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                        "description": "Email of the user making the deposit",
                        "examples": [
                          "user@virtuabroker.com",
                          "john.doe@example.com",
                          "alice@example.com"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "maxLength": 150,
                        "description": "Address of the user making the deposit",
                        "examples": [
                          "123 Main St, Anytown, ES",
                          "456 Elm St, Anytown, ES",
                          "789 Oak St, Anytown, ES"
                        ]
                      },
                      "taxDocumentType": {
                        "type": "string",
                        "maxLength": 50,
                        "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                        "examples": [
                          "CC",
                          "NIT",
                          "CE",
                          "NIF",
                          "Other"
                        ]
                      },
                      "taxId": {
                        "type": "string",
                        "maxLength": 30,
                        "description": "Tax ID of the user making the deposit",
                        "examples": [
                          "123-45-6789",
                          "987-65-4321",
                          "111-22-3333"
                        ]
                      },
                      "country": {
                        "type": "string",
                        "enum": [
                          "US",
                          "CA",
                          "GB",
                          "DE",
                          "FR",
                          "AU",
                          "JP",
                          "KR",
                          "SE",
                          "NO",
                          "DK",
                          "FI",
                          "NL",
                          "BE",
                          "CH",
                          "AT",
                          "NZ",
                          "SG",
                          "IE",
                          "LU",
                          "PT",
                          "ES",
                          "IT",
                          "GR",
                          "CZ",
                          "PL",
                          "HU",
                          "SK",
                          "SI",
                          "EE",
                          "LT",
                          "LV",
                          "IS",
                          "MT",
                          "CY",
                          "HR",
                          "RO",
                          "BG",
                          "BR",
                          "AR",
                          "CL",
                          "MX",
                          "CO",
                          "PE",
                          "PA",
                          "UY",
                          "BO",
                          "ZA",
                          "NG",
                          "KE",
                          "GH",
                          "TZ",
                          "UG",
                          "RW",
                          "MW",
                          "ZM",
                          "BW",
                          "CD",
                          "CI",
                          "CM",
                          "IL",
                          "AE",
                          "QA",
                          "SA",
                          "OM",
                          "KW",
                          "BH",
                          "MY",
                          "PH",
                          "TH",
                          "VN",
                          "ID",
                          "IN",
                          "LK",
                          "NP",
                          "BD",
                          "PK",
                          "EG",
                          "MA",
                          "DZ",
                          "TN",
                          "JO",
                          "LB",
                          "TR",
                          "KH",
                          "MM",
                          "LA",
                          "EN",
                          "BT",
                          "VE",
                          "TW",
                          "HK",
                          "CN"
                        ],
                        "description": "Country code of the user making the deposit",
                        "examples": [
                          "ES",
                          "US",
                          "GB"
                        ]
                      },
                      "state": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "State of the user making the deposit",
                        "examples": [
                          "Madrid",
                          "New York",
                          "London"
                        ]
                      },
                      "postalCode": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 30,
                        "description": "Postal code of the user making the deposit",
                        "examples": [
                          "12345",
                          "67890",
                          "abcde"
                        ]
                      },
                      "city": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "City of the user making the deposit",
                        "examples": [
                          "Madrid",
                          "New York",
                          "London"
                        ]
                      },
                      "dob": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 30,
                        "description": "Date of birth of the user making the deposit",
                        "examples": [
                          "1990-01-01",
                          "1995-05-15",
                          "1988-12-31"
                        ]
                      },
                      "phoneNumber": {
                        "type": "string",
                        "maxLength": 30,
                        "description": "Phone number of the user making the deposit",
                        "examples": [
                          "+447700900123",
                          "+447700900456",
                          "+447700900789"
                        ]
                      },
                      "kycId": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 300,
                        "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                        "examples": [
                          "kyc-12345",
                          "kyc-67890",
                          "kyc-abcde"
                        ]
                      },
                      "activity": {
                        "type": "string",
                        "description": "Activity of the user making the deposit",
                        "examples": [
                          "worker",
                          "business",
                          "student"
                        ]
                      }
                    },
                    "required": [
                      "userType",
                      "businessName",
                      "firstName",
                      "userEmail",
                      "country"
                    ]
                  }
                ],
                "description": "Required when the quote origin is not BALANCE (payer). If the payer email is new, include address, city, postalCode, state, country, firstName, lastName, taxId, kycId for deposit provisioning."
              },
              "destinationUserData": {
                "oneOf": [
                  {
                    "type": "object",
                    "properties": {
                      "userType": {
                        "type": "string",
                        "enum": [
                          "individual"
                        ]
                      },
                      "firstName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 50,
                        "description": "First name of the user making the deposit (or representative for business)",
                        "examples": [
                          "John",
                          "Alice",
                          "Bob"
                        ]
                      },
                      "lastName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "Last name of the user making the deposit (or representative for business)",
                        "examples": [
                          "Doe",
                          "Smith",
                          "Johnson"
                        ]
                      },
                      "userEmail": {
                        "type": "string",
                        "maxLength": 254,
                        "format": "email",
                        "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                        "description": "Email of the user making the deposit",
                        "examples": [
                          "user@virtuabroker.com",
                          "john.doe@example.com",
                          "alice@example.com"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "maxLength": 150,
                        "description": "Address of the user making the deposit",
                        "examples": [
                          "123 Main St, Anytown, ES",
                          "456 Elm St, Anytown, ES",
                          "789 Oak St, Anytown, ES"
                        ]
                      },
                      "taxDocumentType": {
                        "type": "string",
                        "maxLength": 50,
                        "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                        "examples": [
                          "CC",
                          "NIT",
                          "CE",
                          "NIF",
                          "Other"
                        ]
                      },
                      "taxId": {
                        "type": "string",
                        "maxLength": 30,
                        "description": "Tax ID of the user making the deposit",
                        "examples": [
                          "123-45-6789",
                          "987-65-4321",
                          "111-22-3333"
                        ]
                      },
                      "country": {
                        "type": "string",
                        "enum": [
                          "US",
                          "CA",
                          "GB",
                          "DE",
                          "FR",
                          "AU",
                          "JP",
                          "KR",
                          "SE",
                          "NO",
                          "DK",
                          "FI",
                          "NL",
                          "BE",
                          "CH",
                          "AT",
                          "NZ",
                          "SG",
                          "IE",
                          "LU",
                          "PT",
                          "ES",
                          "IT",
                          "GR",
                          "CZ",
                          "PL",
                          "HU",
                          "SK",
                          "SI",
                          "EE",
                          "LT",
                          "LV",
                          "IS",
                          "MT",
                          "CY",
                          "HR",
                          "RO",
                          "BG",
                          "BR",
                          "AR",
                          "CL",
                          "MX",
                          "CO",
                          "PE",
                          "PA",
                          "UY",
                          "BO",
                          "ZA",
                          "NG",
                          "KE",
                          "GH",
                          "TZ",
                          "UG",
                          "RW",
                          "MW",
                          "ZM",
                          "BW",
                          "CD",
                          "CI",
                          "CM",
                          "IL",
                          "AE",
                          "QA",
                          "SA",
                          "OM",
                          "KW",
                          "BH",
                          "MY",
                          "PH",
                          "TH",
                          "VN",
                          "ID",
                          "IN",
                          "LK",
                          "NP",
                          "BD",
                          "PK",
                          "EG",
                          "MA",
                          "DZ",
                          "TN",
                          "JO",
                          "LB",
                          "TR",
                          "KH",
                          "MM",
                          "LA",
                          "EN",
                          "BT",
                          "VE",
                          "TW",
                          "HK",
                          "CN"
                        ],
                        "description": "Country code of the user making the deposit",
                        "examples": [
                          "ES",
                          "US",
                          "GB"
                        ]
                      },
                      "state": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "State of the user making the deposit",
                        "examples": [
                          "Madrid",
                          "New York",
                          "London"
                        ]
                      },
                      "postalCode": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 30,
                        "description": "Postal code of the user making the deposit",
                        "examples": [
                          "12345",
                          "67890",
                          "abcde"
                        ]
                      },
                      "city": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "City of the user making the deposit",
                        "examples": [
                          "Madrid",
                          "New York",
                          "London"
                        ]
                      },
                      "dob": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 30,
                        "description": "Date of birth of the user making the deposit",
                        "examples": [
                          "1990-01-01",
                          "1995-05-15",
                          "1988-12-31"
                        ]
                      },
                      "phoneNumber": {
                        "type": "string",
                        "maxLength": 30,
                        "description": "Phone number of the user making the deposit",
                        "examples": [
                          "+447700900123",
                          "+447700900456",
                          "+447700900789"
                        ]
                      },
                      "kycId": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 300,
                        "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                        "examples": [
                          "kyc-12345",
                          "kyc-67890",
                          "kyc-abcde"
                        ]
                      },
                      "activity": {
                        "type": "string",
                        "description": "Activity of the user making the deposit",
                        "examples": [
                          "worker",
                          "business",
                          "student"
                        ]
                      }
                    },
                    "required": [
                      "userType",
                      "firstName",
                      "userEmail",
                      "country"
                    ]
                  },
                  {
                    "type": "object",
                    "properties": {
                      "userType": {
                        "type": "string",
                        "enum": [
                          "business"
                        ]
                      },
                      "businessName": {
                        "type": "string",
                        "maxLength": 150,
                        "description": "Business name (required when userType is business)",
                        "examples": [
                          "Acme Corp",
                          "Tech Solutions Inc",
                          "Global Services Ltd"
                        ]
                      },
                      "firstName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 50,
                        "description": "First name of the user making the deposit (or representative for business)",
                        "examples": [
                          "John",
                          "Alice",
                          "Bob"
                        ]
                      },
                      "userEmail": {
                        "type": "string",
                        "maxLength": 254,
                        "format": "email",
                        "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                        "description": "Email of the user making the deposit",
                        "examples": [
                          "user@virtuabroker.com",
                          "john.doe@example.com",
                          "alice@example.com"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "maxLength": 150,
                        "description": "Address of the user making the deposit",
                        "examples": [
                          "123 Main St, Anytown, ES",
                          "456 Elm St, Anytown, ES",
                          "789 Oak St, Anytown, ES"
                        ]
                      },
                      "taxDocumentType": {
                        "type": "string",
                        "maxLength": 50,
                        "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                        "examples": [
                          "CC",
                          "NIT",
                          "CE",
                          "NIF",
                          "Other"
                        ]
                      },
                      "taxId": {
                        "type": "string",
                        "maxLength": 30,
                        "description": "Tax ID of the user making the deposit",
                        "examples": [
                          "123-45-6789",
                          "987-65-4321",
                          "111-22-3333"
                        ]
                      },
                      "country": {
                        "type": "string",
                        "enum": [
                          "US",
                          "CA",
                          "GB",
                          "DE",
                          "FR",
                          "AU",
                          "JP",
                          "KR",
                          "SE",
                          "NO",
                          "DK",
                          "FI",
                          "NL",
                          "BE",
                          "CH",
                          "AT",
                          "NZ",
                          "SG",
                          "IE",
                          "LU",
                          "PT",
                          "ES",
                          "IT",
                          "GR",
                          "CZ",
                          "PL",
                          "HU",
                          "SK",
                          "SI",
                          "EE",
                          "LT",
                          "LV",
                          "IS",
                          "MT",
                          "CY",
                          "HR",
                          "RO",
                          "BG",
                          "BR",
                          "AR",
                          "CL",
                          "MX",
                          "CO",
                          "PE",
                          "PA",
                          "UY",
                          "BO",
                          "ZA",
                          "NG",
                          "KE",
                          "GH",
                          "TZ",
                          "UG",
                          "RW",
                          "MW",
                          "ZM",
                          "BW",
                          "CD",
                          "CI",
                          "CM",
                          "IL",
                          "AE",
                          "QA",
                          "SA",
                          "OM",
                          "KW",
                          "BH",
                          "MY",
                          "PH",
                          "TH",
                          "VN",
                          "ID",
                          "IN",
                          "LK",
                          "NP",
                          "BD",
                          "PK",
                          "EG",
                          "MA",
                          "DZ",
                          "TN",
                          "JO",
                          "LB",
                          "TR",
                          "KH",
                          "MM",
                          "LA",
                          "EN",
                          "BT",
                          "VE",
                          "TW",
                          "HK",
                          "CN"
                        ],
                        "description": "Country code of the user making the deposit",
                        "examples": [
                          "ES",
                          "US",
                          "GB"
                        ]
                      },
                      "state": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "State of the user making the deposit",
                        "examples": [
                          "Madrid",
                          "New York",
                          "London"
                        ]
                      },
                      "postalCode": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 30,
                        "description": "Postal code of the user making the deposit",
                        "examples": [
                          "12345",
                          "67890",
                          "abcde"
                        ]
                      },
                      "city": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100,
                        "description": "City of the user making the deposit",
                        "examples": [
                          "Madrid",
                          "New York",
                          "London"
                        ]
                      },
                      "dob": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 30,
                        "description": "Date of birth of the user making the deposit",
                        "examples": [
                          "1990-01-01",
                          "1995-05-15",
                          "1988-12-31"
                        ]
                      },
                      "phoneNumber": {
                        "type": "string",
                        "maxLength": 30,
                        "description": "Phone number of the user making the deposit",
                        "examples": [
                          "+447700900123",
                          "+447700900456",
                          "+447700900789"
                        ]
                      },
                      "kycId": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 300,
                        "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                        "examples": [
                          "kyc-12345",
                          "kyc-67890",
                          "kyc-abcde"
                        ]
                      },
                      "activity": {
                        "type": "string",
                        "description": "Activity of the user making the deposit",
                        "examples": [
                          "worker",
                          "business",
                          "student"
                        ]
                      }
                    },
                    "required": [
                      "userType",
                      "businessName",
                      "firstName",
                      "userEmail",
                      "country"
                    ]
                  }
                ],
                "description": "User data of the person/company that will receive the funds"
              },
              "destinationTransferData": {
                "oneOf": [
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "BALANCE"
                        ]
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "Balance transfer details",
                    "title": "Balance"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "iban": {
                        "type": "string",
                        "description": "IBAN number"
                      },
                      "bic": {
                        "type": "string",
                        "description": "BIC number (optional)"
                      },
                      "country": {
                        "type": "string",
                        "description": "Country code"
                      },
                      "accountType": {
                        "type": "string",
                        "enum": [
                          "PERSONAL",
                          "BUSINESS"
                        ],
                        "default": "PERSONAL",
                        "description": "Account type (optional)"
                      },
                      "city": {
                        "type": "string",
                        "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                      },
                      "postalCode": {
                        "type": "string",
                        "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                      },
                      "address": {
                        "type": "string",
                        "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "SEPA"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "iban",
                      "country",
                      "type"
                    ],
                    "description": "SEPA transfer details",
                    "title": "SEPA"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "UK bank account number"
                      },
                      "sortCode": {
                        "type": "string",
                        "description": "UK sort code"
                      },
                      "country": {
                        "type": "string",
                        "enum": [
                          "GB"
                        ],
                        "default": "GB",
                        "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                      },
                      "accountType": {
                        "type": "string",
                        "enum": [
                          "PERSONAL",
                          "BUSINESS"
                        ],
                        "default": "PERSONAL",
                        "description": "Account type (optional)"
                      },
                      "city": {
                        "type": "string",
                        "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                      },
                      "postalCode": {
                        "type": "string",
                        "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                      },
                      "address": {
                        "type": "string",
                        "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "GBP_BANK_TRANSFER"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "accountNumber",
                      "sortCode",
                      "type"
                    ],
                    "description": "GBP domestic bank transfer details",
                    "title": "BankDepositGB"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "accountNumber": {
                        "type": "string",
                        "description": "US bank account number"
                      },
                      "routingNumber": {
                        "type": "string",
                        "description": "US ABA routing number"
                      },
                      "country": {
                        "type": "string",
                        "enum": [
                          "US"
                        ],
                        "default": "US",
                        "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                      },
                      "accountType": {
                        "type": "string",
                        "enum": [
                          "PERSONAL",
                          "BUSINESS"
                        ],
                        "default": "PERSONAL",
                        "description": "Account type (optional)"
                      },
                      "bankAccountType": {
                        "type": "string",
                        "enum": [
                          "CHECKING",
                          "SAVINGS"
                        ],
                        "default": "CHECKING",
                        "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                      },
                      "city": {
                        "type": "string",
                        "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                      },
                      "postalCode": {
                        "type": "string",
                        "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                      },
                      "state": {
                        "type": "string",
                        "pattern": "^[A-Z]{2}$",
                        "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                      },
                      "address": {
                        "type": "string",
                        "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "ACH_US"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "accountNumber",
                      "routingNumber",
                      "state",
                      "type"
                    ],
                    "description": "USD ACH transfer details",
                    "title": "AchUS"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "linkedBankAccount"
                        ]
                      },
                      "accountLinkId": {
                        "type": "string",
                        "pattern": "^alnk_[0-9a-f]{24}$",
                        "description": "Identifier of one of the account holder own linked bank accounts",
                        "examples": [
                          "alnk_0123456789abcdef01234567"
                        ]
                      }
                    },
                    "required": [
                      "type",
                      "accountLinkId"
                    ],
                    "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                    "title": "LinkedBankAccount",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "ETH"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "ETH destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "ETH"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "MATIC"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "MATIC destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "MATIC"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "SOL"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "SOL destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "SOL"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "TRON"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "TRON destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "TRON"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "CELO"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "CELO destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "CELO"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "BTC"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "BTC destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "BTC"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "SOLANA"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "SOLANA destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "SOLANA"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "XRP"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "XRP destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "XRP"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "CARDANO"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "CARDANO destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "\\S"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "\\S"
                          }
                        }
                      }
                    ],
                    "title": "CARDANO"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "BSC"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "BSC destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "BSC"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "ARBITRUM"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "ARBITRUM destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "ARBITRUM"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "OPTIMISM"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "OPTIMISM destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "OPTIMISM"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "AVALANCHE"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "AVALANCHE destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "AVALANCHE"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "BASE"
                        ]
                      },
                      "address": {
                        "type": "string",
                        "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                      },
                      "memo": {
                        "type": "string",
                        "description": "Memo for the wallet, when the chain uses one"
                      },
                      "txId": {
                        "type": "string",
                        "description": "Blockchain transaction ID"
                      },
                      "txUrlScan": {
                        "type": "string",
                        "description": "Blockchain explorer URL for the transaction"
                      },
                      "destinationWalletAddress": {
                        "type": "string",
                        "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                      },
                      "destinationWalletMemo": {
                        "type": "string",
                        "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                      },
                      "destinationNetwork": {
                        "type": "string",
                        "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                      },
                      "destinationCurrencySymbol": {
                        "type": "string",
                        "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                      }
                    },
                    "required": [
                      "type"
                    ],
                    "description": "BASE destination details",
                    "anyOf": [
                      {
                        "required": [
                          "address"
                        ],
                        "properties": {
                          "address": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      },
                      {
                        "required": [
                          "destinationWalletAddress"
                        ],
                        "properties": {
                          "destinationWalletAddress": {
                            "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                          }
                        }
                      }
                    ],
                    "title": "BASE"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_COL"
                        ]
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name)."
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "description": "Bank account type — CORRIENTE or AHORRO."
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Recipient ID document number."
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "description": "Recipient ID document type — CC, CE, NIT, TI or PP."
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type",
                      "destinationBankCode",
                      "destinationBankAccountType",
                      "destinationDocumentType",
                      "destinationTaxId"
                    ],
                    "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                    "title": "Bank Deposit COL"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "brebKey": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Bre-B key (llave) that identifies the recipient account"
                      },
                      "email": {
                        "type": "string",
                        "description": "Recipient email (optional contact for the Bre-B rail)"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Recipient phone number (optional contact for the Bre-B rail)"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BRE_B_COP"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "brebKey",
                      "type"
                    ],
                    "description": "Colombian Bre-B payout details",
                    "title": "Bre-B COP"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "pattern": "^\\d{4}$",
                        "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                      },
                      "destinationBankAccountNumber": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Recipient bank account number"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Recipient ID document number"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "ACH_COP"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankCode",
                      "destinationBankAccountNumber",
                      "destinationBankAccountType",
                      "destinationDocumentType",
                      "destinationTaxId",
                      "type"
                    ],
                    "description": "Colombian ACH payout details",
                    "title": "ACH COP"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (unused for TWD — no network discovery)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "minLength": 2,
                        "description": "Bank name (required — TWD payouts run over SWIFT)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_TW"
                        ]
                      },
                      "destinationBankBranch": {
                        "type": "string",
                        "minLength": 2,
                        "description": "Bank branch (required — TWD payouts run over SWIFT)"
                      },
                      "bic": {
                        "type": "string",
                        "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                        "description": "SWIFT BIC code (required for TWD payouts)"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "description": "Type of bank account (legacy, optional)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Tax ID of the recipient (legacy, optional)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "description": "Document type of the recipient (legacy, optional)"
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "destinationBankName",
                      "type",
                      "destinationBankBranch",
                      "bic"
                    ],
                    "description": "Taiwan bank deposit details (SWIFT payout)",
                    "title": "Bank Deposit TW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "description": "Bank code"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationBankBranch": {
                        "type": "string",
                        "description": "Bank branch"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Tax ID of the recipient"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_BR"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankCode",
                      "destinationBankAccount",
                      "destinationBankBranch",
                      "destinationTaxId",
                      "type"
                    ],
                    "description": "Brazilian bank deposit details",
                    "title": "Bank Deposit BR"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPixCode": {
                        "type": "string",
                        "description": "PIX code"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Tax ID of the recipient"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "PIX_BR"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPixCode",
                      "destinationTaxId",
                      "type"
                    ],
                    "description": "Brazilian PIX details",
                    "title": "PIX BR"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccountNumber": {
                        "type": "string",
                        "description": "Bank account number"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Name of the bank"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                        "description": "Tax ID of the recipient"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "description": "Type of bank account"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_VEN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccountNumber",
                      "destinationBankName",
                      "destinationTaxId",
                      "destinationBankAccountType",
                      "type"
                    ],
                    "description": "Venezuelan bank deposit details",
                    "title": "Bank Deposit VEN"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "description": "Bank code"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                        "description": "Tax ID of the recipient"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "description": "Type of bank account"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "PHONE_DEPOSIT_VEN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankCode",
                      "destinationPhoneNumber",
                      "destinationTaxId",
                      "destinationBankAccountType",
                      "type"
                    ],
                    "description": "Venezuelan phone deposit details",
                    "title": "Phone Deposit VEN"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationIFSC": {
                        "type": "string",
                        "description": "IFSC code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_IN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Bank Deposit IN",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationIFSC": {
                        "type": "string",
                        "description": "IFSC code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "IMPS"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "IMPS",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationIFSC": {
                        "type": "string",
                        "description": "IFSC code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "THAI_QR"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Thai QR",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationIFSC": {
                        "type": "string",
                        "description": "IFSC code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "VIET_QR"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Viet QR",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationIFSC": {
                        "type": "string",
                        "description": "IFSC code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "GCASH"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "GCash",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Tax ID"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_PAYMENT_IN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "destinationTaxId",
                      "type"
                    ],
                    "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Mobile Payment IN",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "description": "Bank code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_VN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "destinationBankCode",
                      "type"
                    ],
                    "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Bank Deposit VN",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "bic": {
                        "type": "string",
                        "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "destinationAddress": {
                        "type": "string",
                        "description": "Address line 1 of the recipient"
                      },
                      "destinationCity": {
                        "type": "string",
                        "description": "Recipient city (defaults to Hong Kong)"
                      },
                      "accountHolderName": {
                        "type": "string",
                        "description": "Bank account holder name if different from payee"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_HK"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "bic",
                      "destinationBankName",
                      "destinationAddress",
                      "type"
                    ],
                    "description": "Hong Kong bank deposit details (HKD bank corridor)",
                    "title": "Bank Deposit HK"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "pattern": "^\\d+$",
                        "description": "CNAPS / bank institution code (numeric, variable length)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name"
                      },
                      "destinationAddress": {
                        "type": "string",
                        "description": "Address line 1 of the recipient"
                      },
                      "destinationCity": {
                        "type": "string",
                        "description": "Recipient city"
                      },
                      "destinationState": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                      },
                      "destinationPostcode": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                      },
                      "destinationPhone": {
                        "type": "string",
                        "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                      },
                      "accountHolderName": {
                        "type": "string",
                        "description": "Bank account holder name if different from payee"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_CN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "destinationBankCode",
                      "destinationBankName",
                      "destinationAddress",
                      "destinationCity",
                      "destinationState",
                      "destinationPostcode",
                      "type"
                    ],
                    "description": "China mainland bank deposit details (CNY bank corridor)",
                    "title": "Bank Deposit CN"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_AR"
                        ]
                      },
                      "destinationCBU": {
                        "type": "string",
                        "description": "CBU — 22-digit bank account key (legacy, optional)"
                      },
                      "destinationCVU": {
                        "type": "string",
                        "description": "CVU — 22-digit virtual account key (legacy, optional)"
                      },
                      "destinationAlias": {
                        "type": "string",
                        "description": "Account alias (legacy, optional)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "description": "Document type of the recipient (legacy, optional)"
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type",
                      "destinationTaxId"
                    ],
                    "description": "Argentinian bank deposit details",
                    "title": "Bank Deposit AR"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Recipient bank name (required for Chilean bank payouts)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_CL"
                        ]
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "minLength": 1,
                        "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "description": "Document type of the recipient (legacy, optional)"
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "destinationBankName",
                      "type",
                      "destinationBankAccountType",
                      "destinationTaxId"
                    ],
                    "description": "Chilean bank deposit details",
                    "title": "Bank Deposit CL"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 30,
                        "description": "Recipient name (required, 2–30 characters)"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 11,
                        "description": "Bank account number (max 11 digits for Bolivian accounts)"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (unused for BOB — no network discovery)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "maxLength": 20,
                        "description": "Bank name (optional, max 20 characters)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_BO"
                        ]
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 15,
                        "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type",
                      "destinationTaxId"
                    ],
                    "description": "Bolivian bank deposit details",
                    "title": "Bank Deposit BO"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_PE"
                        ]
                      },
                      "destinationCCI": {
                        "type": "string",
                        "description": "CCI — 20-digit interbank account code (legacy, optional)"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "description": "Account type (corriente/ahorro) (legacy, optional)"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "description": "Document type of the recipient (legacy, optional)"
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "destinationNetworkId",
                      "type"
                    ],
                    "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Bank Deposit PE",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "pattern": "^\\d{3}$",
                        "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                      },
                      "destinationBankAccountNumber": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 20,
                        "description": "Recipient bank account number (max 20)"
                      },
                      "destinationBankAccountType": {
                        "type": "string",
                        "enum": [
                          "CORRIENTE",
                          "AHORROS",
                          "PHONE"
                        ],
                        "description": "Bank account type"
                      },
                      "destinationCCI": {
                        "type": "string",
                        "pattern": "^\\d{1,20}$",
                        "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                      },
                      "destinationDocumentType": {
                        "type": "string",
                        "enum": [
                          "CC",
                          "CE",
                          "RUC",
                          "PAS",
                          "PAR",
                          "LMI",
                          "OTHER"
                        ],
                        "description": "Recipient identification type"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 50,
                        "description": "Recipient identification number (max 50)"
                      },
                      "email": {
                        "type": "string",
                        "pattern": "^.+@.+\\..+$",
                        "description": "Recipient email (required for PEN payouts)"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "pattern": "^\\d{1,9}$",
                        "description": "Recipient phone number (required, max 9 digits)"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_PEN"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankCode",
                      "destinationBankAccountNumber",
                      "destinationBankAccountType",
                      "destinationCCI",
                      "destinationDocumentType",
                      "destinationTaxId",
                      "email",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Peruvian bank deposit details (bank-code payout corridor).",
                    "title": "Bank Deposit PEN"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_NG"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Nigeria bank deposit details",
                    "title": "Bank Deposit NG"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_KE"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Kenya bank deposit details",
                    "title": "Bank Deposit KE"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_GH"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Bank Deposit GH",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_ZA"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "South Africa bank deposit details",
                    "title": "Bank Deposit ZA"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_TZ"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Tanzania bank deposit details",
                    "title": "Bank Deposit TZ"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_UG"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Uganda bank deposit details",
                    "title": "Bank Deposit UG"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_RW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Rwanda bank deposit details",
                    "title": "Bank Deposit RW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_MW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Malawi bank deposit details",
                    "title": "Bank Deposit MW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_ZM"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Zambia bank deposit details",
                    "title": "Bank Deposit ZM"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_BW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Botswana bank deposit details",
                    "title": "Bank Deposit BW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_CD"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Bank Deposit CD",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_XOF"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "West African CFA bank deposit details",
                    "title": "Bank Deposit XOF"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankAccount": {
                        "type": "string",
                        "description": "Bank account"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationBankName is given)"
                      },
                      "destinationBankName": {
                        "type": "string",
                        "description": "Bank name (used to resolve the network when id is omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_XAF"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccount",
                      "type"
                    ],
                    "description": "Central African CFA bank deposit details",
                    "title": "Bank Deposit XAF"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_NG"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Nigeria mobile money details",
                    "title": "Mobile Money NG"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_KE"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Kenya mobile money details",
                    "title": "Mobile Money KE"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_GH"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Mobile Money GH",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_ZA"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "South Africa mobile money details",
                    "title": "Mobile Money ZA"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_TZ"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Tanzania mobile money details",
                    "title": "Mobile Money TZ"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_UG"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Uganda mobile money details",
                    "title": "Mobile Money UG"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_RW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Rwanda mobile money details",
                    "title": "Mobile Money RW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_MW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Malawi mobile money details",
                    "title": "Mobile Money MW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_ZM"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Zambia mobile money details",
                    "title": "Mobile Money ZM"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_BW"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Botswana mobile money details",
                    "title": "Mobile Money BW"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_CD"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "Mobile Money CD",
                    "deprecated": true
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_XOF"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "West African CFA mobile money details",
                    "title": "Mobile Money XOF"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPhoneNumber": {
                        "type": "string",
                        "description": "Phone number"
                      },
                      "destinationNetworkId": {
                        "type": "string",
                        "description": "Payout network id (optional if destinationNetworkName is given)"
                      },
                      "destinationNetworkName": {
                        "type": "string",
                        "description": "Mobile money network name (resolves the network when id omitted)"
                      },
                      "country": {
                        "type": "string",
                        "description": "ISO 3166 country code"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "MOBILE_MONEY_XAF"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPhoneNumber",
                      "type"
                    ],
                    "description": "Central African CFA mobile money details",
                    "title": "Mobile Money XAF"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationBankCode": {
                        "type": "string",
                        "description": "Bank code"
                      },
                      "destinationBankAccountNumber": {
                        "type": "string",
                        "description": "Bank account number (18-digit CLABE)"
                      },
                      "numericReference": {
                        "type": "string",
                        "description": "Numeric reference"
                      },
                      "notesReference": {
                        "type": "string",
                        "description": "Notes reference"
                      },
                      "destinationClabe": {
                        "type": "string",
                        "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                      },
                      "destinationTaxId": {
                        "type": "string",
                        "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "BANK_DEPOSIT_MX"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationBankAccountNumber",
                      "type"
                    ],
                    "description": "Mexican bank deposit details",
                    "title": "Bank Deposit MX"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "destinationName": {
                        "type": "string",
                        "description": "Name of the recipient"
                      },
                      "destinationPseNumber": {
                        "type": "string",
                        "description": "PSE number"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "PSE"
                        ]
                      }
                    },
                    "required": [
                      "destinationName",
                      "destinationPseNumber",
                      "type"
                    ],
                    "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                    "title": "PSE",
                    "deprecated": true
                  }
                ],
                "description": "The details required for the end user destination transfer method."
              },
              "externalReference": {
                "type": "string",
                "description": "Your own reference for this order, echoed back on the order object",
                "examples": [
                  "order-2026-000123"
                ]
              },
              "integrationSessionId": {
                "type": "string",
                "pattern": "^int_[A-Za-z0-9]{16}$",
                "description": "Integration session ID for partner attribution tracking",
                "examples": [
                  "int_a1B2c3D4e5F6g7H8"
                ]
              },
              "tradeDetails": {
                "type": "object",
                "properties": {
                  "businessType": {
                    "type": "string",
                    "enum": [
                      "GOODS_TRADE"
                    ]
                  },
                  "contractNo": {
                    "type": "string",
                    "minLength": 1
                  },
                  "website": {
                    "type": "string",
                    "format": "uri"
                  },
                  "products": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "name": {
                          "type": "string",
                          "minLength": 1
                        },
                        "quantity": {
                          "type": "number",
                          "minimum": 0,
                          "exclusiveMinimum": true
                        },
                        "unit": {
                          "type": "string",
                          "minLength": 1
                        },
                        "category": {
                          "type": "string",
                          "minLength": 1
                        }
                      },
                      "required": [
                        "name",
                        "quantity",
                        "unit"
                      ],
                      "additionalProperties": false
                    },
                    "minItems": 1
                  }
                },
                "required": [
                  "businessType",
                  "contractNo",
                  "products"
                ],
                "additionalProperties": false,
                "description": "Trade context for regulated payout corridors that require a transaction document (e.g. CNY SAFE compliance): goods/services type, contract number, and itemised product list. Collected at order creation for bank-deposit CN orders."
              }
            },
            "required": [
              "quoteId"
            ],
            "additionalProperties": false,
            "description": "Create an order from a quote. userData (payer) is required unless the quote uses origin rail BALANCE.",
            "title": "Create Order with User Data"
          },
          {
            "type": "object",
            "properties": {
              "transferId": {
                "type": "string",
                "description": "Transfer ID without provider prefix (from path parameter)",
                "example": "12345"
              },
              "quoteId": {
                "type": "string",
                "description": "Quote ID (required for order creation, from request body)",
                "example": "QUOTE123"
              }
            },
            "required": [
              "transferId",
              "quoteId"
            ]
          }
        ]
      },
      "LinkPendingPaymentRequest": {
        "type": "object",
        "properties": {
          "transferId": {
            "type": "string",
            "description": "Transfer ID without provider prefix (from path parameter)",
            "example": "12345"
          },
          "entityId": {
            "type": "string",
            "description": "Order ID or Deposit ID to link to (from request body)",
            "example": "01CLFXMT67II"
          },
          "entityType": {
            "type": "string",
            "enum": [
              "order",
              "deposit"
            ],
            "description": "Type of entity to link to (from request body)",
            "example": "deposit"
          }
        },
        "required": [
          "transferId",
          "entityId",
          "entityType"
        ]
      },
      "LinkPendingPaymentResponse": {
        "type": "object",
        "properties": {
          "message": {
            "type": "string"
          },
          "transferId": {
            "type": "string"
          },
          "entityId": {
            "type": "string"
          },
          "entityType": {
            "type": "string",
            "enum": [
              "order",
              "deposit"
            ]
          }
        },
        "required": [
          "transferId",
          "entityId",
          "entityType"
        ]
      },
      "RemovePrelinkRequest": {
        "type": "object",
        "properties": {
          "transferId": {
            "type": "string",
            "description": "Transfer ID without provider prefix (from path parameter)",
            "example": "12345"
          },
          "reason": {
            "type": "string",
            "minLength": 1,
            "description": "Reason for removing prelink (from request body)",
            "example": "Incorrect prelink match"
          }
        },
        "required": [
          "transferId",
          "reason"
        ]
      },
      "RemovePrelinkResponse": {
        "type": "object",
        "properties": {
          "message": {
            "type": "string"
          },
          "transferId": {
            "type": "string"
          }
        },
        "required": [
          "transferId"
        ]
      },
      "CreateConversationRequest": {
        "type": "object",
        "properties": {
          "endUserEmail": {
            "type": "string",
            "minLength": 1,
            "maxLength": 254,
            "format": "email",
            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
            "description": "Email of the end-user this conversation belongs to. An account is provisioned on first use if none exists."
          },
          "text": {
            "type": "string",
            "minLength": 1,
            "maxLength": 5000,
            "description": "The opening message. See `authoredBy` for who it is from."
          },
          "authoredBy": {
            "type": "string",
            "enum": [
              "end_user",
              "operator"
            ],
            "default": "end_user",
            "description": "Who writes the opening message. `end_user` (default) is the customer opening a support thread — the thread then waits on you. `operator` is you reaching out first: the thread waits on the customer, the unread sits on their side, and no `conversation_created` webhook is emitted (you already know — you sent it)."
          },
          "subject": {
            "type": "string",
            "minLength": 1,
            "maxLength": 200,
            "description": "Thread subject"
          },
          "topic": {
            "type": "string",
            "minLength": 1,
            "maxLength": 200,
            "description": "Free-text triage topic"
          },
          "priority": {
            "type": "string",
            "enum": [
              "low",
              "normal",
              "high"
            ],
            "description": "Triage priority"
          },
          "relatedOrderId": {
            "type": "string",
            "minLength": 1,
            "description": "An order id to associate with the thread"
          }
        },
        "required": [
          "endUserEmail",
          "text"
        ],
        "additionalProperties": false,
        "example": {
          "endUserEmail": "jane@example.com",
          "text": "My payout has not arrived yet",
          "subject": "Payout delay",
          "priority": "normal"
        }
      },
      "SendConversationMessageRequest": {
        "type": "object",
        "properties": {
          "endUserEmail": {
            "type": "string",
            "minLength": 1,
            "maxLength": 254,
            "format": "email",
            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
            "description": "Email of the end-user this conversation belongs to"
          },
          "text": {
            "type": "string",
            "minLength": 1,
            "maxLength": 5000,
            "description": "Message body"
          },
          "relatedOrderId": {
            "type": "string",
            "minLength": 1,
            "description": "An order id to associate with the message"
          },
          "attachments": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "minLength": 1,
                  "description": "Attachment MIME/type label"
                },
                "url": {
                  "type": "string",
                  "format": "uri",
                  "description": "HTTPS URL of the attachment"
                },
                "name": {
                  "type": "string",
                  "description": "Original file name"
                },
                "size": {
                  "type": "number",
                  "minimum": 0,
                  "description": "Size in bytes"
                }
              },
              "required": [
                "type",
                "url"
              ]
            },
            "maxItems": 10,
            "description": "Up to 10 attachments"
          },
          "internal": {
            "type": "boolean",
            "description": "When true, the message is an internal support note hidden from the end-user."
          }
        },
        "required": [
          "endUserEmail",
          "text"
        ],
        "additionalProperties": false,
        "example": {
          "endUserEmail": "jane@example.com",
          "text": "We are looking into your payout now."
        }
      },
      "ConversationView": {
        "type": "object",
        "properties": {
          "conversationId": {
            "type": "string",
            "description": "Conversation id"
          },
          "status": {
            "type": "string",
            "enum": [
              "open",
              "pending_admin",
              "pending_account",
              "closed"
            ],
            "description": "Thread status"
          },
          "subject": {
            "type": "string",
            "description": "Thread subject"
          },
          "topic": {
            "type": "string",
            "description": "Triage topic"
          },
          "priority": {
            "type": "string",
            "enum": [
              "low",
              "normal",
              "high"
            ],
            "description": "Triage priority"
          },
          "lastMessagePreview": {
            "type": "string",
            "description": "PII-safe preview of the last end-user-visible message"
          },
          "lastMessageAt": {
            "type": "number",
            "description": "Epoch-ms of the last message"
          },
          "lastMessageBy": {
            "type": "string",
            "enum": [
              "account",
              "support",
              "system"
            ],
            "description": "Who sent the last message"
          },
          "unreadCount": {
            "type": "integer",
            "minimum": 0,
            "description": "Messages from the end-user awaiting your response"
          },
          "relatedOrderIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Order ids associated with the thread"
          },
          "createdAt": {
            "type": "number",
            "description": "Epoch-ms created"
          },
          "updatedAt": {
            "type": "number",
            "description": "Epoch-ms last updated"
          }
        },
        "required": [
          "conversationId",
          "status",
          "lastMessagePreview",
          "lastMessageAt",
          "lastMessageBy",
          "unreadCount",
          "relatedOrderIds",
          "createdAt",
          "updatedAt"
        ],
        "example": {
          "conversationId": "2f1c0e9a-9b3e-4d7a-8c2b-1a2b3c4d5e6f",
          "status": "pending_account",
          "subject": "Payout delay",
          "priority": "normal",
          "lastMessagePreview": "We are looking into your payout now.",
          "lastMessageAt": 1751200000000,
          "lastMessageBy": "support",
          "unreadCount": 0,
          "relatedOrderIds": [],
          "createdAt": 1751190000000,
          "updatedAt": 1751200000000
        }
      },
      "ConversationMessageView": {
        "type": "object",
        "properties": {
          "messageId": {
            "type": "string",
            "description": "Message id"
          },
          "conversationId": {
            "type": "string",
            "description": "Conversation id"
          },
          "sender": {
            "type": "string",
            "enum": [
              "account",
              "support",
              "system"
            ],
            "description": "Who sent the message: `account` = the end-user, `support` = your support agent or VirtuaBroker, `system` = automated."
          },
          "text": {
            "type": "string",
            "description": "Message body"
          },
          "internal": {
            "type": "boolean",
            "description": "True for an internal support note. You MUST NOT display an internal message to the end-user — request audience=end_user for the end-user-facing pipe."
          },
          "relatedOrderId": {
            "type": "string",
            "description": "Associated order id"
          },
          "attachments": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "minLength": 1,
                  "description": "Attachment MIME/type label"
                },
                "url": {
                  "type": "string",
                  "format": "uri",
                  "description": "HTTPS URL of the attachment"
                },
                "name": {
                  "type": "string",
                  "description": "Original file name"
                },
                "size": {
                  "type": "number",
                  "minimum": 0,
                  "description": "Size in bytes"
                }
              },
              "required": [
                "type",
                "url"
              ]
            },
            "description": "Attachments"
          },
          "createdAt": {
            "type": "number",
            "description": "Epoch-ms created"
          },
          "editedAt": {
            "type": "number",
            "description": "Epoch-ms last edited"
          }
        },
        "required": [
          "messageId",
          "conversationId",
          "sender",
          "text",
          "internal",
          "createdAt"
        ],
        "example": {
          "messageId": "9a8b7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d",
          "conversationId": "2f1c0e9a-9b3e-4d7a-8c2b-1a2b3c4d5e6f",
          "sender": "account",
          "text": "My payout has not arrived yet",
          "internal": false,
          "createdAt": 1751190000000
        }
      },
      "CreateWidgetSessionRequest": {
        "type": "object",
        "properties": {
          "endUserEmail": {
            "type": "string",
            "minLength": 1,
            "maxLength": 254,
            "format": "email",
            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
            "description": "Email of the end-user the widget session is scoped to. An account is provisioned on first use."
          }
        },
        "required": [
          "endUserEmail"
        ],
        "additionalProperties": false,
        "example": {
          "endUserEmail": "jane@example.com"
        }
      },
      "WidgetSessionResponse": {
        "type": "object",
        "properties": {
          "session": {
            "type": "string",
            "description": "Opaque, short-lived credential scoped to one end-user. Hand ONLY this to the browser widget; it carries no secret. Pass it back as the `session` query param on widget calls."
          },
          "expiresAt": {
            "type": "number",
            "description": "Session expiry (epoch ms)"
          }
        },
        "required": [
          "session",
          "expiresAt"
        ],
        "example": {
          "session": "eyJraW5kIjoiY29udmVyc2F0aW9uX3dpZGdldCIs....4b1c…",
          "expiresAt": 1751207200000
        }
      },
      "CustomerPublic": {
        "type": "object",
        "properties": {
          "customerId": {
            "type": "string",
            "minLength": 1,
            "description": "Stable customer identifier: the email for individuals, a UUID for organisations."
          },
          "customerType": {
            "type": "string",
            "enum": [
              "individual",
              "organisation"
            ],
            "description": "Type of customer: a person or a business."
          },
          "externalId": {
            "type": "string",
            "description": "The identifier you supplied at creation to link this customer to your own system. Absent when the customer was created without one."
          },
          "email": {
            "type": "string",
            "minLength": 1,
            "maxLength": 254,
            "format": "email",
            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
            "description": "Customer email. Present for individuals (equals customerId); individuals are identified by email, so it cannot be updated."
          },
          "firstName": {
            "type": "string",
            "description": "First name (individuals)."
          },
          "lastName": {
            "type": "string",
            "description": "Last name (individuals)."
          },
          "displayName": {
            "type": "string",
            "description": "Human-readable name: full name for individuals, legal company name for organisations."
          },
          "country": {
            "type": "string",
            "minLength": 2,
            "maxLength": 2,
            "description": "ISO 3166-1 alpha-2 country: residence country for individuals, incorporation country for organisations."
          },
          "language": {
            "type": "string",
            "enum": [
              "en",
              "es",
              "pt",
              "fr",
              "de",
              "it"
            ],
            "description": "Preferred language."
          },
          "defaultCurrency": {
            "type": "string",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYN",
              "BZD",
              "CAD",
              "CDF",
              "CHF",
              "CLP",
              "CNY",
              "COP",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRU",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLE",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STN",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TVD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "UYU",
              "UYW",
              "UZS",
              "VED",
              "VES",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XSU",
              "XTS",
              "XUA",
              "XXX",
              "YER",
              "ZAR",
              "ZMW",
              "ZWL"
            ],
            "description": "Default currency for this customer."
          },
          "kycStatus": {
            "type": "string",
            "enum": [
              "PENDING",
              "REVIEWING",
              "IN_PROGRESS",
              "APPROVED",
              "REJECTED",
              "NOT_AVAILABLE"
            ],
            "description": "Identity verification (KYC) status. NOT_AVAILABLE for organisations (see kybStatus)."
          },
          "kybStatus": {
            "type": "string",
            "enum": [
              "DRAFT",
              "PENDING_REVIEW",
              "APPROVED",
              "REJECTED"
            ],
            "description": "Business verification (KYB) status. Present for organisations."
          },
          "createdAt": {
            "type": "number",
            "description": "Creation timestamp (epoch milliseconds)."
          },
          "updatedAt": {
            "type": "number",
            "description": "Last identity/verification update timestamp (epoch milliseconds)."
          }
        },
        "required": [
          "customerId",
          "customerType",
          "displayName",
          "kycStatus",
          "createdAt",
          "updatedAt"
        ],
        "additionalProperties": false
      },
      "CreateCustomerRequest": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "customerType": {
                "type": "string",
                "enum": [
                  "individual"
                ]
              },
              "email": {
                "type": "string",
                "minLength": 1,
                "maxLength": 254,
                "format": "email",
                "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                "description": "Customer email — the public identifier of an individual customer. Case-insensitive: it is normalized to lowercase."
              },
              "firstName": {
                "type": "string",
                "minLength": 1,
                "maxLength": 35
              },
              "lastName": {
                "type": "string",
                "minLength": 1,
                "maxLength": 35
              },
              "country": {
                "type": "string",
                "enum": [
                  "AW",
                  "AF",
                  "AO",
                  "AI",
                  "AX",
                  "AL",
                  "AD",
                  "AE",
                  "AR",
                  "AM",
                  "AS",
                  "AQ",
                  "TF",
                  "AG",
                  "AU",
                  "AT",
                  "AZ",
                  "BI",
                  "BE",
                  "BJ",
                  "BQ",
                  "BF",
                  "BD",
                  "BG",
                  "BH",
                  "BS",
                  "BA",
                  "BL",
                  "BY",
                  "BZ",
                  "BM",
                  "BO",
                  "BR",
                  "BB",
                  "BN",
                  "BT",
                  "BV",
                  "BW",
                  "CF",
                  "CA",
                  "CC",
                  "CH",
                  "CL",
                  "CN",
                  "CI",
                  "CM",
                  "CD",
                  "CG",
                  "CK",
                  "CO",
                  "KM",
                  "CV",
                  "CR",
                  "CU",
                  "CW",
                  "CX",
                  "KY",
                  "CY",
                  "CZ",
                  "DE",
                  "DJ",
                  "DM",
                  "DK",
                  "DO",
                  "DZ",
                  "EC",
                  "EG",
                  "ER",
                  "EH",
                  "ES",
                  "EE",
                  "ET",
                  "FI",
                  "FJ",
                  "FK",
                  "FR",
                  "FO",
                  "FM",
                  "GA",
                  "GB",
                  "GE",
                  "GG",
                  "GH",
                  "GI",
                  "GN",
                  "GP",
                  "GM",
                  "GW",
                  "GQ",
                  "GR",
                  "GD",
                  "GL",
                  "GT",
                  "GF",
                  "GU",
                  "GY",
                  "HK",
                  "HM",
                  "HN",
                  "HR",
                  "HT",
                  "HU",
                  "ID",
                  "IM",
                  "IN",
                  "IO",
                  "IE",
                  "IR",
                  "IQ",
                  "IS",
                  "IL",
                  "IT",
                  "JM",
                  "JE",
                  "JO",
                  "JP",
                  "KZ",
                  "KE",
                  "KG",
                  "KH",
                  "KI",
                  "KN",
                  "KR",
                  "KW",
                  "LA",
                  "LB",
                  "LR",
                  "LY",
                  "LC",
                  "LI",
                  "LK",
                  "LS",
                  "LT",
                  "LU",
                  "LV",
                  "MO",
                  "MF",
                  "MA",
                  "MC",
                  "MD",
                  "MG",
                  "MV",
                  "MX",
                  "MH",
                  "MK",
                  "ML",
                  "MT",
                  "MM",
                  "ME",
                  "MN",
                  "MP",
                  "MZ",
                  "MR",
                  "MS",
                  "MQ",
                  "MU",
                  "MW",
                  "MY",
                  "YT",
                  "NA",
                  "NC",
                  "NE",
                  "NF",
                  "NG",
                  "NI",
                  "NU",
                  "NL",
                  "NO",
                  "NP",
                  "NR",
                  "NZ",
                  "OM",
                  "PK",
                  "PA",
                  "PN",
                  "PE",
                  "PH",
                  "PW",
                  "PG",
                  "PL",
                  "PR",
                  "KP",
                  "PT",
                  "PY",
                  "PS",
                  "PF",
                  "QA",
                  "RE",
                  "RO",
                  "RU",
                  "RW",
                  "SA",
                  "SD",
                  "SN",
                  "SG",
                  "GS",
                  "SH",
                  "SJ",
                  "SB",
                  "SL",
                  "SV",
                  "SM",
                  "SO",
                  "PM",
                  "RS",
                  "SS",
                  "ST",
                  "SR",
                  "SK",
                  "SI",
                  "SE",
                  "SZ",
                  "SX",
                  "SC",
                  "SY",
                  "TC",
                  "TD",
                  "TG",
                  "TH",
                  "TJ",
                  "TK",
                  "TM",
                  "TL",
                  "TO",
                  "TT",
                  "TN",
                  "TR",
                  "TV",
                  "TW",
                  "TZ",
                  "UG",
                  "UA",
                  "UM",
                  "UY",
                  "US",
                  "UZ",
                  "VA",
                  "VC",
                  "VE",
                  "VG",
                  "VI",
                  "VN",
                  "VU",
                  "WF",
                  "WS",
                  "YE",
                  "ZA",
                  "ZM",
                  "ZW"
                ],
                "description": "ISO 3166-1 alpha-2 residence country."
              },
              "language": {
                "type": "string",
                "enum": [
                  "en",
                  "es",
                  "pt",
                  "fr",
                  "de",
                  "it"
                ]
              },
              "defaultCurrency": {
                "type": "string",
                "enum": [
                  "AED",
                  "AFN",
                  "ALL",
                  "AMD",
                  "ANG",
                  "AOA",
                  "ARS",
                  "AUD",
                  "AWG",
                  "AZN",
                  "BAM",
                  "BBD",
                  "BDT",
                  "BGN",
                  "BHD",
                  "BIF",
                  "BMD",
                  "BND",
                  "BOB",
                  "BRL",
                  "BSD",
                  "BTN",
                  "BWP",
                  "BYN",
                  "BZD",
                  "CAD",
                  "CDF",
                  "CHF",
                  "CLP",
                  "CNY",
                  "COP",
                  "CRC",
                  "CUC",
                  "CUP",
                  "CVE",
                  "CZK",
                  "DJF",
                  "DKK",
                  "DOP",
                  "DZD",
                  "EGP",
                  "ERN",
                  "ETB",
                  "EUR",
                  "FJD",
                  "FKP",
                  "GBP",
                  "GEL",
                  "GHS",
                  "GIP",
                  "GMD",
                  "GNF",
                  "GTQ",
                  "GYD",
                  "HKD",
                  "HNL",
                  "HRK",
                  "HTG",
                  "HUF",
                  "IDR",
                  "ILS",
                  "INR",
                  "IQD",
                  "IRR",
                  "ISK",
                  "JMD",
                  "JOD",
                  "JPY",
                  "KES",
                  "KGS",
                  "KHR",
                  "KMF",
                  "KPW",
                  "KRW",
                  "KWD",
                  "KYD",
                  "KZT",
                  "LAK",
                  "LBP",
                  "LKR",
                  "LRD",
                  "LSL",
                  "LYD",
                  "MAD",
                  "MDL",
                  "MGA",
                  "MKD",
                  "MMK",
                  "MNT",
                  "MOP",
                  "MRU",
                  "MUR",
                  "MVR",
                  "MWK",
                  "MXN",
                  "MYR",
                  "MZN",
                  "NAD",
                  "NGN",
                  "NIO",
                  "NOK",
                  "NPR",
                  "NZD",
                  "OMR",
                  "PAB",
                  "PEN",
                  "PGK",
                  "PHP",
                  "PKR",
                  "PLN",
                  "PYG",
                  "QAR",
                  "RON",
                  "RSD",
                  "RUB",
                  "RWF",
                  "SAR",
                  "SBD",
                  "SCR",
                  "SDG",
                  "SEK",
                  "SGD",
                  "SHP",
                  "SLE",
                  "SLL",
                  "SOS",
                  "SRD",
                  "SSP",
                  "STN",
                  "SVC",
                  "SYP",
                  "SZL",
                  "THB",
                  "TJS",
                  "TMT",
                  "TND",
                  "TOP",
                  "TRY",
                  "TTD",
                  "TVD",
                  "TWD",
                  "TZS",
                  "UAH",
                  "UGX",
                  "USD",
                  "UYU",
                  "UYW",
                  "UZS",
                  "VED",
                  "VES",
                  "VND",
                  "VUV",
                  "WST",
                  "XAF",
                  "XAG",
                  "XAU",
                  "XBA",
                  "XBB",
                  "XBC",
                  "XBD",
                  "XCD",
                  "XDR",
                  "XOF",
                  "XPD",
                  "XPF",
                  "XPT",
                  "XSU",
                  "XTS",
                  "XUA",
                  "XXX",
                  "YER",
                  "ZAR",
                  "ZMW",
                  "ZWL"
                ],
                "description": "ISO 4217 currency code (3-letter alphabetic code)"
              },
              "externalId": {
                "type": "string",
                "minLength": 1,
                "maxLength": 128,
                "pattern": "^[A-Za-z0-9._-]+$",
                "description": "Your own stable identifier for this customer (for example your CRM record id). 1-128 characters: letters, digits, dots, underscores, hyphens. Unique within your workspace and immutable once set."
              }
            },
            "required": [
              "customerType",
              "email",
              "firstName",
              "lastName",
              "country"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "customerType": {
                "type": "string",
                "enum": [
                  "organisation"
                ]
              },
              "companyName": {
                "type": "string",
                "minLength": 1,
                "description": "Legal company name."
              },
              "country": {
                "type": "string",
                "enum": [
                  "US",
                  "CA",
                  "GB",
                  "DE",
                  "FR",
                  "AU",
                  "JP",
                  "KR",
                  "SE",
                  "NO",
                  "DK",
                  "FI",
                  "NL",
                  "BE",
                  "CH",
                  "AT",
                  "NZ",
                  "SG",
                  "IE",
                  "LU",
                  "PT",
                  "ES",
                  "IT",
                  "GR",
                  "CZ",
                  "PL",
                  "HU",
                  "SK",
                  "SI",
                  "EE",
                  "LT",
                  "LV",
                  "IS",
                  "MT",
                  "CY",
                  "HR",
                  "RO",
                  "BG",
                  "BR",
                  "AR",
                  "CL",
                  "MX",
                  "CO",
                  "PE",
                  "PA",
                  "UY",
                  "BO",
                  "ZA",
                  "NG",
                  "KE",
                  "GH",
                  "TZ",
                  "UG",
                  "RW",
                  "MW",
                  "ZM",
                  "BW",
                  "CD",
                  "CI",
                  "CM",
                  "IL",
                  "AE",
                  "QA",
                  "SA",
                  "OM",
                  "KW",
                  "BH",
                  "MY",
                  "PH",
                  "TH",
                  "VN",
                  "ID",
                  "IN",
                  "LK",
                  "NP",
                  "BD",
                  "PK",
                  "EG",
                  "MA",
                  "DZ",
                  "TN",
                  "JO",
                  "LB",
                  "TR",
                  "KH",
                  "MM",
                  "LA",
                  "EN",
                  "BT",
                  "VE",
                  "TW",
                  "HK",
                  "CN"
                ],
                "description": "Country of incorporation (ISO 3166-1 alpha-2)."
              },
              "registrationNumber": {
                "type": "string",
                "minLength": 1
              },
              "language": {
                "type": "string",
                "enum": [
                  "en",
                  "es",
                  "pt",
                  "fr",
                  "de",
                  "it"
                ]
              },
              "defaultCurrency": {
                "type": "string",
                "enum": [
                  "AED",
                  "AFN",
                  "ALL",
                  "AMD",
                  "ANG",
                  "AOA",
                  "ARS",
                  "AUD",
                  "AWG",
                  "AZN",
                  "BAM",
                  "BBD",
                  "BDT",
                  "BGN",
                  "BHD",
                  "BIF",
                  "BMD",
                  "BND",
                  "BOB",
                  "BRL",
                  "BSD",
                  "BTN",
                  "BWP",
                  "BYN",
                  "BZD",
                  "CAD",
                  "CDF",
                  "CHF",
                  "CLP",
                  "CNY",
                  "COP",
                  "CRC",
                  "CUC",
                  "CUP",
                  "CVE",
                  "CZK",
                  "DJF",
                  "DKK",
                  "DOP",
                  "DZD",
                  "EGP",
                  "ERN",
                  "ETB",
                  "EUR",
                  "FJD",
                  "FKP",
                  "GBP",
                  "GEL",
                  "GHS",
                  "GIP",
                  "GMD",
                  "GNF",
                  "GTQ",
                  "GYD",
                  "HKD",
                  "HNL",
                  "HRK",
                  "HTG",
                  "HUF",
                  "IDR",
                  "ILS",
                  "INR",
                  "IQD",
                  "IRR",
                  "ISK",
                  "JMD",
                  "JOD",
                  "JPY",
                  "KES",
                  "KGS",
                  "KHR",
                  "KMF",
                  "KPW",
                  "KRW",
                  "KWD",
                  "KYD",
                  "KZT",
                  "LAK",
                  "LBP",
                  "LKR",
                  "LRD",
                  "LSL",
                  "LYD",
                  "MAD",
                  "MDL",
                  "MGA",
                  "MKD",
                  "MMK",
                  "MNT",
                  "MOP",
                  "MRU",
                  "MUR",
                  "MVR",
                  "MWK",
                  "MXN",
                  "MYR",
                  "MZN",
                  "NAD",
                  "NGN",
                  "NIO",
                  "NOK",
                  "NPR",
                  "NZD",
                  "OMR",
                  "PAB",
                  "PEN",
                  "PGK",
                  "PHP",
                  "PKR",
                  "PLN",
                  "PYG",
                  "QAR",
                  "RON",
                  "RSD",
                  "RUB",
                  "RWF",
                  "SAR",
                  "SBD",
                  "SCR",
                  "SDG",
                  "SEK",
                  "SGD",
                  "SHP",
                  "SLE",
                  "SLL",
                  "SOS",
                  "SRD",
                  "SSP",
                  "STN",
                  "SVC",
                  "SYP",
                  "SZL",
                  "THB",
                  "TJS",
                  "TMT",
                  "TND",
                  "TOP",
                  "TRY",
                  "TTD",
                  "TVD",
                  "TWD",
                  "TZS",
                  "UAH",
                  "UGX",
                  "USD",
                  "UYU",
                  "UYW",
                  "UZS",
                  "VED",
                  "VES",
                  "VND",
                  "VUV",
                  "WST",
                  "XAF",
                  "XAG",
                  "XAU",
                  "XBA",
                  "XBB",
                  "XBC",
                  "XBD",
                  "XCD",
                  "XDR",
                  "XOF",
                  "XPD",
                  "XPF",
                  "XPT",
                  "XSU",
                  "XTS",
                  "XUA",
                  "XXX",
                  "YER",
                  "ZAR",
                  "ZMW",
                  "ZWL"
                ],
                "description": "ISO 4217 currency code (3-letter alphabetic code)"
              },
              "externalId": {
                "type": "string",
                "minLength": 1,
                "maxLength": 128,
                "pattern": "^[A-Za-z0-9._-]+$",
                "description": "Your own stable identifier for this customer (for example your CRM record id). 1-128 characters: letters, digits, dots, underscores, hyphens. Unique within your workspace and immutable once set."
              }
            },
            "required": [
              "customerType",
              "companyName"
            ],
            "additionalProperties": false
          }
        ]
      },
      "UpdateCustomerRequest": {
        "type": "object",
        "properties": {
          "language": {
            "type": "string",
            "enum": [
              "en",
              "es",
              "pt",
              "fr",
              "de",
              "it"
            ]
          },
          "defaultCurrency": {
            "type": "string",
            "enum": [
              "AED",
              "AFN",
              "ALL",
              "AMD",
              "ANG",
              "AOA",
              "ARS",
              "AUD",
              "AWG",
              "AZN",
              "BAM",
              "BBD",
              "BDT",
              "BGN",
              "BHD",
              "BIF",
              "BMD",
              "BND",
              "BOB",
              "BRL",
              "BSD",
              "BTN",
              "BWP",
              "BYN",
              "BZD",
              "CAD",
              "CDF",
              "CHF",
              "CLP",
              "CNY",
              "COP",
              "CRC",
              "CUC",
              "CUP",
              "CVE",
              "CZK",
              "DJF",
              "DKK",
              "DOP",
              "DZD",
              "EGP",
              "ERN",
              "ETB",
              "EUR",
              "FJD",
              "FKP",
              "GBP",
              "GEL",
              "GHS",
              "GIP",
              "GMD",
              "GNF",
              "GTQ",
              "GYD",
              "HKD",
              "HNL",
              "HRK",
              "HTG",
              "HUF",
              "IDR",
              "ILS",
              "INR",
              "IQD",
              "IRR",
              "ISK",
              "JMD",
              "JOD",
              "JPY",
              "KES",
              "KGS",
              "KHR",
              "KMF",
              "KPW",
              "KRW",
              "KWD",
              "KYD",
              "KZT",
              "LAK",
              "LBP",
              "LKR",
              "LRD",
              "LSL",
              "LYD",
              "MAD",
              "MDL",
              "MGA",
              "MKD",
              "MMK",
              "MNT",
              "MOP",
              "MRU",
              "MUR",
              "MVR",
              "MWK",
              "MXN",
              "MYR",
              "MZN",
              "NAD",
              "NGN",
              "NIO",
              "NOK",
              "NPR",
              "NZD",
              "OMR",
              "PAB",
              "PEN",
              "PGK",
              "PHP",
              "PKR",
              "PLN",
              "PYG",
              "QAR",
              "RON",
              "RSD",
              "RUB",
              "RWF",
              "SAR",
              "SBD",
              "SCR",
              "SDG",
              "SEK",
              "SGD",
              "SHP",
              "SLE",
              "SLL",
              "SOS",
              "SRD",
              "SSP",
              "STN",
              "SVC",
              "SYP",
              "SZL",
              "THB",
              "TJS",
              "TMT",
              "TND",
              "TOP",
              "TRY",
              "TTD",
              "TVD",
              "TWD",
              "TZS",
              "UAH",
              "UGX",
              "USD",
              "UYU",
              "UYW",
              "UZS",
              "VED",
              "VES",
              "VND",
              "VUV",
              "WST",
              "XAF",
              "XAG",
              "XAU",
              "XBA",
              "XBB",
              "XBC",
              "XBD",
              "XCD",
              "XDR",
              "XOF",
              "XPD",
              "XPF",
              "XPT",
              "XSU",
              "XTS",
              "XUA",
              "XXX",
              "YER",
              "ZAR",
              "ZMW",
              "ZWL"
            ],
            "description": "ISO 4217 currency code (3-letter alphabetic code)"
          }
        },
        "additionalProperties": false
      },
      "CreatePaymentRequestRequest": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "general",
              "nominal"
            ],
            "description": "`general` = payable by anyone with the link; `nominal` = targeted at one payer (requires `recipient`)."
          },
          "amount": {
            "type": "number",
            "minimum": 0,
            "exclusiveMinimum": true,
            "description": "Amount to request."
          },
          "currency": {
            "type": "string",
            "minLength": 1,
            "description": "Settlement currency (what the payee receives). Must be holdable as a balance — see GET /v1/currencies."
          },
          "accountId": {
            "type": "string",
            "minLength": 1,
            "description": "The managed customer (payee) who receives the funds. Must belong to your workspace."
          },
          "recipient": {
            "type": "object",
            "properties": {
              "accountId": {
                "type": "string",
                "minLength": 1
              },
              "contactEmail": {
                "type": "string",
                "minLength": 1,
                "maxLength": 254,
                "format": "email",
                "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                "description": "Email address"
              }
            },
            "additionalProperties": false,
            "description": "The payer being asked to pay. Required for `nominal`, forbidden for `general`."
          },
          "lockedPaymentCurrency": {
            "type": "string",
            "minLength": 1,
            "description": "Forces the payer to pay in exactly this currency."
          },
          "description": {
            "type": "string",
            "maxLength": 500
          },
          "expiresAt": {
            "type": "integer",
            "minimum": 0,
            "exclusiveMinimum": true,
            "description": "Expiry timestamp (epoch milliseconds)."
          }
        },
        "required": [
          "type",
          "amount",
          "currency",
          "accountId"
        ],
        "additionalProperties": false
      },
      "CreatePaymentRequestResponse": {
        "type": "object",
        "properties": {
          "paymentRequestId": {
            "type": "string",
            "minLength": 1
          },
          "url": {
            "type": "string",
            "minLength": 1,
            "description": "Hosted checkout link the payer completes the payment on."
          }
        },
        "required": [
          "paymentRequestId",
          "url"
        ],
        "additionalProperties": false
      },
      "PaymentRequestStatus": {
        "type": "object",
        "properties": {
          "paymentRequestId": {
            "type": "string",
            "minLength": 1
          },
          "type": {
            "type": "string",
            "enum": [
              "general",
              "nominal"
            ]
          },
          "status": {
            "type": "string",
            "enum": [
              "open",
              "processing",
              "paid",
              "expired",
              "cancelled",
              "rejected"
            ]
          },
          "recipient": {
            "type": "object",
            "nullable": true,
            "properties": {
              "accountId": {
                "type": "string",
                "minLength": 1
              },
              "contactEmail": {
                "type": "string",
                "minLength": 1,
                "maxLength": 254,
                "format": "email",
                "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                "description": "Email address"
              }
            },
            "additionalProperties": false
          },
          "destinationLabel": {
            "type": "string",
            "nullable": true,
            "description": "Display name of the payee requesting the funds."
          },
          "requestedAmount": {
            "type": "number"
          },
          "requestedCurrency": {
            "type": "string"
          },
          "lockedPaymentCurrency": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "notes": {
            "type": "string",
            "nullable": true
          },
          "orderId": {
            "type": "string",
            "nullable": true
          },
          "viewedAt": {
            "type": "number",
            "nullable": true,
            "description": "First time the payer opened the pay page (epoch ms)."
          },
          "paymentStartedAt": {
            "type": "number",
            "nullable": true,
            "description": "When the payer accepted and the order was created (epoch ms)."
          },
          "createdAt": {
            "type": "number"
          },
          "updatedAt": {
            "type": "number"
          },
          "expiresAt": {
            "type": "number",
            "nullable": true
          },
          "settlement": {
            "type": "object",
            "properties": {
              "status": {
                "type": "string",
                "nullable": true,
                "description": "Status of the linked payment order."
              },
              "originAmount": {
                "type": "number",
                "nullable": true
              },
              "originCurrency": {
                "type": "string",
                "nullable": true
              }
            },
            "required": [
              "status",
              "originAmount",
              "originCurrency"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "paymentRequestId",
          "type",
          "status",
          "recipient",
          "destinationLabel",
          "requestedAmount",
          "requestedCurrency",
          "lockedPaymentCurrency",
          "description",
          "notes",
          "orderId",
          "viewedAt",
          "paymentStartedAt",
          "createdAt",
          "updatedAt",
          "expiresAt"
        ],
        "additionalProperties": false
      },
      "CreateWebhookEndpointRequest": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 100,
            "description": "Human-readable label for this endpoint, e.g. \"Production\"",
            "example": "Production"
          },
          "url": {
            "type": "string",
            "format": "uri",
            "description": "HTTPS URL that will receive webhook POST requests",
            "example": "https://api.example.com/webhooks/virtuabroker"
          },
          "secret": {
            "type": "string",
            "minLength": 8,
            "description": "Signing secret used to compute the X-VirtuaBroker-Signature-256 header. Store this securely — it is never returned after creation.",
            "example": "whsec_my_very_secret_key"
          }
        },
        "required": [
          "name",
          "url",
          "secret"
        ]
      },
      "UpdateWebhookEndpointRequest": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 100
          },
          "url": {
            "type": "string",
            "format": "uri"
          },
          "secret": {
            "type": "string",
            "minLength": 8
          },
          "isActive": {
            "type": "boolean"
          }
        }
      },
      "WebhookEndpointResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "url": {
            "type": "string",
            "format": "uri"
          },
          "isActive": {
            "type": "boolean"
          },
          "createdAt": {
            "type": "number"
          },
          "updatedAt": {
            "type": "number"
          }
        },
        "required": [
          "id",
          "name",
          "url",
          "isActive",
          "createdAt",
          "updatedAt"
        ],
        "description": "Webhook endpoint — secret is never included in responses",
        "example": {
          "id": "abc123def456",
          "name": "Production",
          "url": "https://api.example.com/webhooks/virtuabroker",
          "isActive": true,
          "createdAt": 1704067200000,
          "updatedAt": 1704067200000
        }
      },
      "ResendWebhookRequest": {
        "type": "object",
        "properties": {
          "entityType": {
            "type": "string",
            "enum": [
              "order",
              "deposit"
            ],
            "description": "Type of entity to resend the webhook for",
            "example": "order"
          },
          "entityId": {
            "type": "string",
            "minLength": 1,
            "description": "ID of the order or deposit",
            "example": "ABC123DEF456"
          },
          "webhookType": {
            "type": "string",
            "enum": [
              "verification_status_updated",
              "order_status_updated",
              "order_completed",
              "deposit_completed",
              "deposit_partially_completed",
              "deposit_method_created",
              "deposit_method_activated",
              "trade_completed",
              "trade_partially_completed",
              "withdrawal_completed",
              "withdrawal_partially_completed",
              "offramp_completed",
              "offramp_partially_completed",
              "balance_updated",
              "wallet_deposit_completed",
              "openbanking_status_updated",
              "compliance_case_pending_action",
              "compliance_case_updated",
              "conversation_created",
              "conversation_updated",
              "conversation_message_created",
              "pending_payment_created_or_detected",
              "pending_payment_updated",
              "deposit_action_required"
            ],
            "description": "Override the webhook event type; defaults to the most recent type for the entity"
          }
        },
        "required": [
          "entityType",
          "entityId"
        ]
      },
      "CreateDepositMethodRequest": {
        "type": "object",
        "properties": {
          "accountId": {
            "type": "string",
            "minLength": 1,
            "description": "Account id that will own the deposit method"
          },
          "userData": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "userType": {
                    "type": "string",
                    "enum": [
                      "individual"
                    ]
                  },
                  "firstName": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 50,
                    "description": "First name of the user making the deposit (or representative for business)",
                    "examples": [
                      "John",
                      "Alice",
                      "Bob"
                    ]
                  },
                  "lastName": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "Last name of the user making the deposit (or representative for business)",
                    "examples": [
                      "Doe",
                      "Smith",
                      "Johnson"
                    ]
                  },
                  "userEmail": {
                    "type": "string",
                    "maxLength": 254,
                    "format": "email",
                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                    "description": "Email of the user making the deposit",
                    "examples": [
                      "user@virtuabroker.com",
                      "john.doe@example.com",
                      "alice@example.com"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "maxLength": 150,
                    "description": "Address of the user making the deposit",
                    "examples": [
                      "123 Main St, Anytown, ES",
                      "456 Elm St, Anytown, ES",
                      "789 Oak St, Anytown, ES"
                    ]
                  },
                  "taxDocumentType": {
                    "type": "string",
                    "maxLength": 50,
                    "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                    "examples": [
                      "CC",
                      "NIT",
                      "CE",
                      "NIF",
                      "Other"
                    ]
                  },
                  "taxId": {
                    "type": "string",
                    "maxLength": 30,
                    "description": "Tax ID of the user making the deposit",
                    "examples": [
                      "123-45-6789",
                      "987-65-4321",
                      "111-22-3333"
                    ]
                  },
                  "country": {
                    "type": "string",
                    "enum": [
                      "US",
                      "CA",
                      "GB",
                      "DE",
                      "FR",
                      "AU",
                      "JP",
                      "KR",
                      "SE",
                      "NO",
                      "DK",
                      "FI",
                      "NL",
                      "BE",
                      "CH",
                      "AT",
                      "NZ",
                      "SG",
                      "IE",
                      "LU",
                      "PT",
                      "ES",
                      "IT",
                      "GR",
                      "CZ",
                      "PL",
                      "HU",
                      "SK",
                      "SI",
                      "EE",
                      "LT",
                      "LV",
                      "IS",
                      "MT",
                      "CY",
                      "HR",
                      "RO",
                      "BG",
                      "BR",
                      "AR",
                      "CL",
                      "MX",
                      "CO",
                      "PE",
                      "PA",
                      "UY",
                      "BO",
                      "ZA",
                      "NG",
                      "KE",
                      "GH",
                      "TZ",
                      "UG",
                      "RW",
                      "MW",
                      "ZM",
                      "BW",
                      "CD",
                      "CI",
                      "CM",
                      "IL",
                      "AE",
                      "QA",
                      "SA",
                      "OM",
                      "KW",
                      "BH",
                      "MY",
                      "PH",
                      "TH",
                      "VN",
                      "ID",
                      "IN",
                      "LK",
                      "NP",
                      "BD",
                      "PK",
                      "EG",
                      "MA",
                      "DZ",
                      "TN",
                      "JO",
                      "LB",
                      "TR",
                      "KH",
                      "MM",
                      "LA",
                      "EN",
                      "BT",
                      "VE",
                      "TW",
                      "HK",
                      "CN"
                    ],
                    "description": "Country code of the user making the deposit",
                    "examples": [
                      "ES",
                      "US",
                      "GB"
                    ]
                  },
                  "state": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "State of the user making the deposit",
                    "examples": [
                      "Madrid",
                      "New York",
                      "London"
                    ]
                  },
                  "postalCode": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 30,
                    "description": "Postal code of the user making the deposit",
                    "examples": [
                      "12345",
                      "67890",
                      "abcde"
                    ]
                  },
                  "city": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "City of the user making the deposit",
                    "examples": [
                      "Madrid",
                      "New York",
                      "London"
                    ]
                  },
                  "dob": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 30,
                    "description": "Date of birth of the user making the deposit",
                    "examples": [
                      "1990-01-01",
                      "1995-05-15",
                      "1988-12-31"
                    ]
                  },
                  "phoneNumber": {
                    "type": "string",
                    "maxLength": 30,
                    "description": "Phone number of the user making the deposit",
                    "examples": [
                      "+447700900123",
                      "+447700900456",
                      "+447700900789"
                    ]
                  },
                  "kycId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 300,
                    "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                    "examples": [
                      "kyc-12345",
                      "kyc-67890",
                      "kyc-abcde"
                    ]
                  },
                  "activity": {
                    "type": "string",
                    "description": "Activity of the user making the deposit",
                    "examples": [
                      "worker",
                      "business",
                      "student"
                    ]
                  }
                },
                "required": [
                  "userType",
                  "firstName",
                  "userEmail",
                  "country"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "userType": {
                    "type": "string",
                    "enum": [
                      "business"
                    ]
                  },
                  "businessName": {
                    "type": "string",
                    "maxLength": 150,
                    "description": "Business name (required when userType is business)",
                    "examples": [
                      "Acme Corp",
                      "Tech Solutions Inc",
                      "Global Services Ltd"
                    ]
                  },
                  "firstName": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 50,
                    "description": "First name of the user making the deposit (or representative for business)",
                    "examples": [
                      "John",
                      "Alice",
                      "Bob"
                    ]
                  },
                  "userEmail": {
                    "type": "string",
                    "maxLength": 254,
                    "format": "email",
                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                    "description": "Email of the user making the deposit",
                    "examples": [
                      "user@virtuabroker.com",
                      "john.doe@example.com",
                      "alice@example.com"
                    ]
                  },
                  "address": {
                    "type": "string",
                    "maxLength": 150,
                    "description": "Address of the user making the deposit",
                    "examples": [
                      "123 Main St, Anytown, ES",
                      "456 Elm St, Anytown, ES",
                      "789 Oak St, Anytown, ES"
                    ]
                  },
                  "taxDocumentType": {
                    "type": "string",
                    "maxLength": 50,
                    "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                    "examples": [
                      "CC",
                      "NIT",
                      "CE",
                      "NIF",
                      "Other"
                    ]
                  },
                  "taxId": {
                    "type": "string",
                    "maxLength": 30,
                    "description": "Tax ID of the user making the deposit",
                    "examples": [
                      "123-45-6789",
                      "987-65-4321",
                      "111-22-3333"
                    ]
                  },
                  "country": {
                    "type": "string",
                    "enum": [
                      "US",
                      "CA",
                      "GB",
                      "DE",
                      "FR",
                      "AU",
                      "JP",
                      "KR",
                      "SE",
                      "NO",
                      "DK",
                      "FI",
                      "NL",
                      "BE",
                      "CH",
                      "AT",
                      "NZ",
                      "SG",
                      "IE",
                      "LU",
                      "PT",
                      "ES",
                      "IT",
                      "GR",
                      "CZ",
                      "PL",
                      "HU",
                      "SK",
                      "SI",
                      "EE",
                      "LT",
                      "LV",
                      "IS",
                      "MT",
                      "CY",
                      "HR",
                      "RO",
                      "BG",
                      "BR",
                      "AR",
                      "CL",
                      "MX",
                      "CO",
                      "PE",
                      "PA",
                      "UY",
                      "BO",
                      "ZA",
                      "NG",
                      "KE",
                      "GH",
                      "TZ",
                      "UG",
                      "RW",
                      "MW",
                      "ZM",
                      "BW",
                      "CD",
                      "CI",
                      "CM",
                      "IL",
                      "AE",
                      "QA",
                      "SA",
                      "OM",
                      "KW",
                      "BH",
                      "MY",
                      "PH",
                      "TH",
                      "VN",
                      "ID",
                      "IN",
                      "LK",
                      "NP",
                      "BD",
                      "PK",
                      "EG",
                      "MA",
                      "DZ",
                      "TN",
                      "JO",
                      "LB",
                      "TR",
                      "KH",
                      "MM",
                      "LA",
                      "EN",
                      "BT",
                      "VE",
                      "TW",
                      "HK",
                      "CN"
                    ],
                    "description": "Country code of the user making the deposit",
                    "examples": [
                      "ES",
                      "US",
                      "GB"
                    ]
                  },
                  "state": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "State of the user making the deposit",
                    "examples": [
                      "Madrid",
                      "New York",
                      "London"
                    ]
                  },
                  "postalCode": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 30,
                    "description": "Postal code of the user making the deposit",
                    "examples": [
                      "12345",
                      "67890",
                      "abcde"
                    ]
                  },
                  "city": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "City of the user making the deposit",
                    "examples": [
                      "Madrid",
                      "New York",
                      "London"
                    ]
                  },
                  "dob": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 30,
                    "description": "Date of birth of the user making the deposit",
                    "examples": [
                      "1990-01-01",
                      "1995-05-15",
                      "1988-12-31"
                    ]
                  },
                  "phoneNumber": {
                    "type": "string",
                    "maxLength": 30,
                    "description": "Phone number of the user making the deposit",
                    "examples": [
                      "+447700900123",
                      "+447700900456",
                      "+447700900789"
                    ]
                  },
                  "kycId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 300,
                    "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                    "examples": [
                      "kyc-12345",
                      "kyc-67890",
                      "kyc-abcde"
                    ]
                  },
                  "activity": {
                    "type": "string",
                    "description": "Activity of the user making the deposit",
                    "examples": [
                      "worker",
                      "business",
                      "student"
                    ]
                  }
                },
                "required": [
                  "userType",
                  "businessName",
                  "firstName",
                  "userEmail",
                  "country"
                ]
              }
            ],
            "description": "Personal data of the account owner used to provision fiat deposit methods (address, city, postalCode, country...). Same shape as the order destinationUserData. Fields provided here take precedence over data already on file."
          },
          "methodType": {
            "type": "string",
            "enum": [
              "crypto",
              "fiat"
            ],
            "default": "crypto",
            "description": "Deposit method type"
          },
          "currency": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "EUR",
                  "USD",
                  "GBP",
                  "BRL",
                  "MXN",
                  "ARS",
                  "COP",
                  "PEN",
                  "NGN",
                  "KES",
                  "TZS",
                  "UGX",
                  "RWF",
                  "MWK",
                  "ZMW",
                  "XOF",
                  "XAF",
                  "BWP"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "USDC",
                  "USDT",
                  "CUSD",
                  "BTC",
                  "ETH",
                  "POL",
                  "SOL",
                  "TRX",
                  "AVAX",
                  "XRP",
                  "BNB"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "USD"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "GBP"
                ]
              }
            ],
            "description": "Currency for the deposit method"
          },
          "network": {
            "type": "string",
            "enum": [
              "BALANCE",
              "SEPA",
              "BTC",
              "ETH",
              "MATIC",
              "POLYGON",
              "CELO",
              "TRON",
              "SOLANA",
              "ARBITRUM",
              "OPTIMISM",
              "AVALANCHE",
              "BSC",
              "BASE",
              "XRP",
              "PIX_BR",
              "UPI",
              "IMPS",
              "TRY_BANK_TRANSFER",
              "AED_BANK_TRANSFER",
              "SPEI",
              "IDR_BANK_TRANSFER",
              "CREDIT_CARD",
              "THAI_QR",
              "VIET_QR",
              "GCASH",
              "ARGENTINA_BANK_TRANSFER",
              "PSE",
              "CLABE",
              "PIX",
              "BANK_DEPOSIT_COL",
              "BANK_DEPOSIT_AR",
              "BANK_DEPOSIT_CL",
              "BANK_DEPOSIT_PE",
              "BANK_DEPOSIT_BO",
              "BANK_DEPOSIT_BR",
              "BANK_DEPOSIT_NG",
              "BANK_DEPOSIT_KE",
              "BANK_DEPOSIT_GH",
              "BANK_DEPOSIT_ZA",
              "BANK_DEPOSIT_TZ",
              "BANK_DEPOSIT_UG",
              "BANK_DEPOSIT_RW",
              "BANK_DEPOSIT_MW",
              "BANK_DEPOSIT_ZM",
              "BANK_DEPOSIT_BW",
              "BANK_DEPOSIT_CD",
              "BANK_DEPOSIT_XOF",
              "BANK_DEPOSIT_XAF",
              "MOBILE_MONEY_NG",
              "MOBILE_MONEY_KE",
              "MOBILE_MONEY_GH",
              "MOBILE_MONEY_ZA",
              "MOBILE_MONEY_TZ",
              "MOBILE_MONEY_UG",
              "MOBILE_MONEY_RW",
              "MOBILE_MONEY_MW",
              "MOBILE_MONEY_ZM",
              "MOBILE_MONEY_BW",
              "MOBILE_MONEY_CD",
              "MOBILE_MONEY_XOF",
              "MOBILE_MONEY_XAF",
              "ACH_US",
              "GBP_BANK_TRANSFER"
            ],
            "description": "Network/rail for crypto deposit methods"
          }
        },
        "required": [
          "accountId",
          "currency"
        ],
        "description": "Request schema for creating a deposit method (generic)"
      },
      "CreateDepositMethodResponse": {
        "type": "object",
        "properties": {
          "methodId": {
            "type": "string",
            "description": "Deposit method id"
          },
          "methodType": {
            "type": "string",
            "enum": [
              "crypto",
              "fiat"
            ],
            "description": "Normalized deposit method type"
          },
          "currency": {
            "type": "string",
            "description": "Currency of the deposit method"
          },
          "network": {
            "type": "string",
            "description": "Network for crypto deposit methods"
          },
          "status": {
            "type": "string",
            "enum": [
              "ACTIVE",
              "PENDING"
            ],
            "description": "Normalized deposit method status"
          },
          "depositInfo": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "address": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Crypto wallet address",
                    "example": "0x1A2b3C4d5E6f7890AbCdEf1234567890AbCdEf12"
                  },
                  "network": {
                    "type": "string",
                    "enum": [
                      "MATIC",
                      "ETH",
                      "CELO",
                      "TRON",
                      "BTC",
                      "SOLANA",
                      "XRP",
                      "CARDANO",
                      "BSC",
                      "ARBITRUM",
                      "OPTIMISM",
                      "AVALANCHE",
                      "BASE"
                    ],
                    "description": "Network for the deposit for crypto deposits",
                    "examples": [
                      "ETH",
                      "MATIC",
                      "CELO"
                    ]
                  },
                  "memo": {
                    "type": "string",
                    "description": "Optional memo for the transaction",
                    "example": "Payment for services"
                  },
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "CRYPTO"
                    ]
                  },
                  "qrCode": {
                    "type": "string",
                    "description": "Base64-encoded QR image for the deposit address",
                    "example": "iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAIAAADTED8xAAABpklEQVR42u3BAQ0AAADCoPdPbQ8HFAAAAAAAAAAAAAAAAAA..."
                  },
                  "qrCodeUrl": {
                    "type": "string",
                    "format": "uri",
                    "description": "7-day signed GCS URL of the QR code PNG"
                  },
                  "qrCodeExpiresAt": {
                    "type": "number",
                    "description": "Unix timestamp (ms) when qrCodeUrl expires"
                  },
                  "receivingAddress": {
                    "type": "string",
                    "description": "The wallet address where funds should be sent",
                    "example": "0xAbCdEf0123456789AbCdEf0123456789AbCdEf01"
                  },
                  "tokenContract": {
                    "type": "string",
                    "description": "The ERC20 token contract address",
                    "example": "0x765DE816845861e75A25fCA122bb6898B8B1282a"
                  },
                  "decimals": {
                    "type": "number",
                    "description": "Token decimals (default 18)",
                    "example": 18
                  }
                },
                "required": [
                  "address",
                  "network",
                  "depositType"
                ],
                "description": "Crypto Deposit Information"
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "SEPA"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "iban": {
                    "type": "string",
                    "description": "SEPA Bank Account Number"
                  },
                  "bic": {
                    "type": "string",
                    "description": "Bank BIC/SWIFT code"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Name of the bank"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "referenceCode": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Payment reference the payer must include in the transfer. Present when this account is a shared collection account, where the reference (not the account number) is what attributes an incoming payment. Absent when the account is dedicated to this deposit method, in which case the coordinates alone identify it. When present it is mandatory: a transfer that omits it cannot be attributed automatically."
                  }
                },
                "required": [
                  "depositType",
                  "iban"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "ACH_US"
                    ]
                  },
                  "routingNumber": {
                    "type": "string",
                    "description": "US bank ABA routing number"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "US bank account number"
                  },
                  "beneficiaryName": {
                    "type": "string",
                    "description": "Beneficiary name on the account"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Name of the bank"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names (e.g. ACH, Wire)"
                  }
                },
                "required": [
                  "depositType",
                  "routingNumber",
                  "accountNumber",
                  "beneficiaryName"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "GBP_BANK_TRANSFER"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "UK bank account number"
                  },
                  "sortCode": {
                    "type": "string",
                    "description": "UK sort code"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Name of the bank"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names (e.g. Faster Payments, CHAPS, BACS)"
                  }
                },
                "required": [
                  "depositType",
                  "accountNumber",
                  "sortCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "LOCALBANK"
                    ]
                  },
                  "accountHolder": {
                    "type": "string",
                    "description": "Account holder name"
                  },
                  "accountNumber": {
                    "type": "string",
                    "description": "Local bank account number"
                  },
                  "bankName": {
                    "type": "string",
                    "description": "Bank name"
                  },
                  "bankCountry": {
                    "type": "string",
                    "description": "ISO-3166 country code"
                  },
                  "routingCodes": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                        },
                        "value": {
                          "type": "string",
                          "description": "Routing code value"
                        }
                      },
                      "required": [
                        "type",
                        "value"
                      ]
                    },
                    "description": "Routing identifiers (e.g. sort code, routing number)"
                  },
                  "schemes": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted payment scheme names for this account"
                  }
                },
                "required": [
                  "depositType"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "PIX"
                    ]
                  },
                  "qrCodeString": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Pix copia-e-cola payload (EMV BR Code text) the payer pastes into their bank app; the payer enters the amount"
                  },
                  "base64QRCode": {
                    "type": "string",
                    "minLength": 1,
                    "description": "The same payload rendered as a PNG, raw base64 (no data-URI prefix)"
                  }
                },
                "required": [
                  "depositType",
                  "qrCodeString",
                  "base64QRCode"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "PENDING"
                    ]
                  },
                  "currency": {
                    "type": "string",
                    "description": "Currency of the deposit method"
                  }
                },
                "required": [
                  "depositType",
                  "currency"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "url": {
                    "type": "string",
                    "description": "URL of the PSE payment"
                  },
                  "amountPrefilled": {
                    "type": "boolean",
                    "description": "Whether the payment page already carries the amount. When false or absent, the payer must enter it."
                  },
                  "depositType": {
                    "type": "string",
                    "enum": [
                      "PSE"
                    ],
                    "description": "Type of the deposit"
                  }
                },
                "required": [
                  "url",
                  "depositType"
                ]
              }
            ],
            "description": "Deposit instructions for the method when available"
          },
          "createdAt": {
            "type": "number",
            "description": "Creation timestamp"
          },
          "updatedAt": {
            "type": "number",
            "description": "Last update timestamp"
          }
        },
        "required": [
          "methodId",
          "methodType",
          "currency",
          "status"
        ],
        "description": "Response schema for creating a generic deposit method"
      },
      "UpdateOrderRequest": {
        "type": "object",
        "properties": {
          "orderId": {
            "type": "string",
            "description": "ID of the order to update"
          },
          "externalId": {
            "type": "string",
            "description": "External reference ID for this order."
          },
          "status": {
            "type": "string",
            "enum": [
              "Completed",
              "Failed"
            ],
            "description": "Status of the order. Only Completed or Failed are allowed"
          },
          "error": {
            "type": "string",
            "description": "Error message in case the status is FAILED"
          },
          "errorId": {
            "type": "number",
            "description": "Error code in case the status is FAILED"
          },
          "errorDescription": {
            "type": "string",
            "description": "Error description in case the status is FAILED"
          },
          "amount": {
            "type": "number",
            "minimum": 0,
            "exclusiveMinimum": true,
            "description": "Final settled amount"
          },
          "fee": {
            "type": "number",
            "minimum": 0,
            "exclusiveMinimum": true,
            "description": "Settlement fee"
          },
          "price": {
            "type": "number",
            "minimum": 0,
            "exclusiveMinimum": true,
            "description": "Final conversion rate price"
          }
        },
        "required": [
          "orderId",
          "externalId",
          "amount",
          "fee",
          "price"
        ],
        "description": "Request schema for updating a settled order"
      },
      "UpdateDepositRequest": {
        "type": "object",
        "properties": {
          "depositId": {
            "type": "string",
            "description": "ID of the order to update"
          },
          "status": {
            "type": "string",
            "enum": [
              "Canceled"
            ],
            "description": "Status of the order. Only Canceled is allowed"
          }
        },
        "required": [
          "depositId",
          "status"
        ],
        "description": "Request schema for updating an offramped order"
      },
      "AvailableCurrenciesResponse": {
        "type": "object",
        "properties": {
          "availableOriginCurrencies": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string",
                  "description": "Full currency name"
                },
                "symbol": {
                  "type": "string",
                  "description": "Currency symbol/code"
                },
                "countries": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "Countries where the currency is used"
                },
                "imageUrl": {
                  "type": "string",
                  "description": "URL to the currency icon"
                },
                "networks": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "name": {
                        "type": "string",
                        "description": "Network display name"
                      },
                      "id": {
                        "type": "string",
                        "description": "Network identifier"
                      },
                      "iconUrl": {
                        "type": "string",
                        "description": "URL to the network icon"
                      },
                      "needsMemo": {
                        "type": "boolean",
                        "description": "Whether a memo/tag is required for this network"
                      },
                      "regex": {
                        "type": "object",
                        "additionalProperties": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          }
                        },
                        "description": "Client-side validation patterns keyed by field name"
                      },
                      "chainId": {
                        "type": "number",
                        "description": "EVM chain id (mainnet)"
                      },
                      "chainIdTestnet": {
                        "type": "number",
                        "description": "EVM chain id (testnet)"
                      },
                      "decimals": {
                        "type": "number",
                        "description": "Token decimals on this network"
                      },
                      "depositRail": {
                        "type": "string",
                        "description": "Deposit rail identifier to pass to provisioning"
                      }
                    },
                    "required": [
                      "name",
                      "id",
                      "iconUrl"
                    ],
                    "description": "Network configuration for a currency"
                  },
                  "description": "Networks available for this currency (crypto/rail)"
                },
                "contractAddresses": {
                  "type": "object",
                  "properties": {
                    "mainnet": {
                      "type": "string"
                    },
                    "sepolia": {
                      "type": "string"
                    },
                    "celo-sepolia": {
                      "type": "string"
                    }
                  },
                  "description": "Token contract addresses per environment (crypto currencies)"
                },
                "originTransferMethods": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "Available deposit (payin) methods — camelCase OriginTransferMethods values"
                },
                "destinationTransferMethods": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "Available payout methods — camelCase DestinationTransferMethods values"
                },
                "priceDigits": {
                  "type": "number",
                  "description": "Decimal places for price display"
                },
                "amountDigits": {
                  "type": "number",
                  "description": "Decimal places for amount input"
                },
                "type": {
                  "type": "string",
                  "enum": [
                    "fiat",
                    "crypto"
                  ],
                  "description": "Type of currency (fiat or crypto)"
                }
              },
              "required": [
                "name",
                "symbol",
                "countries",
                "imageUrl",
                "originTransferMethods",
                "destinationTransferMethods",
                "priceDigits",
                "amountDigits"
              ],
              "description": "Currency configuration and capabilities"
            },
            "description": "Currencies usable as the origin (payin) of an order/deposit"
          },
          "availableDestinationCurrencies": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string",
                  "description": "Full currency name"
                },
                "symbol": {
                  "type": "string",
                  "description": "Currency symbol/code"
                },
                "countries": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "Countries where the currency is used"
                },
                "imageUrl": {
                  "type": "string",
                  "description": "URL to the currency icon"
                },
                "networks": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "name": {
                        "type": "string",
                        "description": "Network display name"
                      },
                      "id": {
                        "type": "string",
                        "description": "Network identifier"
                      },
                      "iconUrl": {
                        "type": "string",
                        "description": "URL to the network icon"
                      },
                      "needsMemo": {
                        "type": "boolean",
                        "description": "Whether a memo/tag is required for this network"
                      },
                      "regex": {
                        "type": "object",
                        "additionalProperties": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          }
                        },
                        "description": "Client-side validation patterns keyed by field name"
                      },
                      "chainId": {
                        "type": "number",
                        "description": "EVM chain id (mainnet)"
                      },
                      "chainIdTestnet": {
                        "type": "number",
                        "description": "EVM chain id (testnet)"
                      },
                      "decimals": {
                        "type": "number",
                        "description": "Token decimals on this network"
                      },
                      "depositRail": {
                        "type": "string",
                        "description": "Deposit rail identifier to pass to provisioning"
                      }
                    },
                    "required": [
                      "name",
                      "id",
                      "iconUrl"
                    ],
                    "description": "Network configuration for a currency"
                  },
                  "description": "Networks available for this currency (crypto/rail)"
                },
                "contractAddresses": {
                  "type": "object",
                  "properties": {
                    "mainnet": {
                      "type": "string"
                    },
                    "sepolia": {
                      "type": "string"
                    },
                    "celo-sepolia": {
                      "type": "string"
                    }
                  },
                  "description": "Token contract addresses per environment (crypto currencies)"
                },
                "originTransferMethods": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "Available deposit (payin) methods — camelCase OriginTransferMethods values"
                },
                "destinationTransferMethods": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "Available payout methods — camelCase DestinationTransferMethods values"
                },
                "priceDigits": {
                  "type": "number",
                  "description": "Decimal places for price display"
                },
                "amountDigits": {
                  "type": "number",
                  "description": "Decimal places for amount input"
                },
                "type": {
                  "type": "string",
                  "enum": [
                    "fiat",
                    "crypto"
                  ],
                  "description": "Type of currency (fiat or crypto)"
                }
              },
              "required": [
                "name",
                "symbol",
                "countries",
                "imageUrl",
                "originTransferMethods",
                "destinationTransferMethods",
                "priceDigits",
                "amountDigits"
              ],
              "description": "Currency configuration and capabilities"
            },
            "description": "Currencies usable as the destination (payout) of an order/withdrawal"
          },
          "availableOriginCountries": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string",
                  "description": "Country name"
                },
                "code": {
                  "type": "string",
                  "description": "ISO-3166 alpha-2 country code"
                },
                "imageUrl": {
                  "type": "string",
                  "description": "URL to the country flag image"
                },
                "currencies": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "Currency codes used in this country"
                }
              },
              "required": [
                "name",
                "code",
                "imageUrl",
                "currencies"
              ],
              "description": "Country configuration"
            },
            "description": "Countries derived from the available origin currencies"
          },
          "availableDestinationCountries": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string",
                  "description": "Country name"
                },
                "code": {
                  "type": "string",
                  "description": "ISO-3166 alpha-2 country code"
                },
                "imageUrl": {
                  "type": "string",
                  "description": "URL to the country flag image"
                },
                "currencies": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "Currency codes used in this country"
                }
              },
              "required": [
                "name",
                "code",
                "imageUrl",
                "currencies"
              ],
              "description": "Country configuration"
            },
            "description": "Countries derived from the available destination currencies"
          },
          "holdableCurrencies": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Currencies the workspace can hold as an internal balance. Anything available but not listed here is rail-only (payin/payout, settles to a held currency)."
          },
          "exchangeableDestinationsByCurrency": {
            "type": "object",
            "additionalProperties": {
              "type": "array",
              "items": {
                "type": "string"
              },
              "description": "Holdable destination currency codes reachable from this origin"
            },
            "description": "For each holdable origin currency, the holdable destination currencies it can currently be exchanged into over a live trading path of at most 2 hops. The relation is pairwise, not transitive: offer only the origin-to-destination pairs listed here. Omitted when the signal was not computed; an empty object means nothing is currently exchangeable."
          }
        },
        "required": [
          "availableOriginCurrencies",
          "availableDestinationCurrencies",
          "availableOriginCountries",
          "availableDestinationCountries"
        ],
        "description": "Available origin/destination currencies + countries for the workspace, plus the holdable-currency and exchangeable-destinations capability signals"
      },
      "CurrencyNetworksResponse": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "id": {
              "type": "string",
              "description": "Opaque network identifier to pass back on a payout"
            },
            "name": {
              "type": "string",
              "description": "Display name of the destination network"
            },
            "type": {
              "type": "string",
              "enum": [
                "bank",
                "momo"
              ],
              "description": "Whether the network is a bank or a mobile-money provider"
            }
          },
          "required": [
            "id",
            "name",
            "type"
          ],
          "additionalProperties": false,
          "description": "A payout network available for a local-currency corridor"
        }
      },
      "CurrencyTransferLimitsResponse": {
        "type": "object",
        "nullable": true,
        "properties": {
          "min": {
            "type": "number",
            "description": "Minimum per-transaction payout amount in the destination currency (major units); omitted if no floor applies",
            "example": 1000
          },
          "max": {
            "type": "number",
            "description": "Maximum per-transaction payout amount in the destination currency (major units); omitted if no ceiling applies",
            "example": 5000000
          },
          "currency": {
            "type": "string",
            "description": "Currency the limits are expressed in",
            "example": "NGN"
          }
        },
        "required": [
          "currency"
        ],
        "description": "Per-transaction payout limits for a (destination currency, method) corridor; null when no published limits exist"
      },
      "DestinationSchemaResponse": {
        "type": "object",
        "properties": {
          "corridor": {
            "type": "object",
            "properties": {
              "currency": {
                "type": "string",
                "description": "The currency this corridor describes"
              },
              "direction": {
                "type": "string",
                "enum": [
                  "payin",
                  "payout"
                ],
                "description": "Whether this corridor collects money (`payin`) or pays it out (`payout`)"
              },
              "candidates": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "party": {
                      "type": "string",
                      "enum": [
                        "first_party",
                        "third_party"
                      ],
                      "description": "Whose money moves. `first_party` is the entity that owns the account; `third_party` is a counterparty — a payout recipient, or a payer sending into a shared collection account."
                    },
                    "payerIdentity": {
                      "type": "string",
                      "enum": [
                        "none",
                        "declared",
                        "verified"
                      ],
                      "description": "How deeply the payer must be identified. `none` — nothing collected. `declared` — identity data submitted with the transaction, no verification flow. `verified` — documents plus approval."
                    },
                    "receiverIdentity": {
                      "type": "string",
                      "enum": [
                        "none",
                        "declared",
                        "verified"
                      ],
                      "description": "How deeply the receiver must be identified, on the same scale as `payerIdentity`"
                    },
                    "methods": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Methods this candidate alone can service — a subset of the corridor-wide `methods`"
                    },
                    "settledWith": {
                      "type": "string",
                      "description": "Held currency this candidate settles into, e.g. `USDC`. Informational: it never changes what you send or what the recipient gets."
                    },
                    "collectionModel": {
                      "type": "string",
                      "enum": [
                        "shared_account",
                        "per_user",
                        "per_transaction",
                        "linked_account_pull"
                      ],
                      "description": "How a payin is funded. `shared_account` — one collection account with a reference per payment. `per_user` — a dedicated account per account holder. `per_transaction` — fresh details issued for each payment. `linked_account_pull` — no details to send to: the funds are debited from a bank account the account holder linked."
                    }
                  },
                  "required": [
                    "party",
                    "payerIdentity",
                    "receiverIdentity",
                    "methods"
                  ],
                  "additionalProperties": false
                },
                "description": "The routes that can service this corridor, in fallback order. More than one means the corridor has redundancy."
              },
              "methods": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "description": "Every method available on this corridor — the union across all candidates. Compare with a candidate’s own `methods`, which is only what that route supports."
              },
              "requiresIdentity": {
                "type": "boolean",
                "description": "True when at least one candidate needs payer or receiver identity"
              }
            },
            "required": [
              "currency",
              "direction",
              "candidates",
              "methods",
              "requiresIdentity"
            ],
            "additionalProperties": false,
            "description": "Abstract corridor descriptor (no provider names)"
          },
          "method": {
            "type": "string",
            "description": "The payout method this schema describes"
          },
          "fields": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string",
                  "description": "Field name to submit on the payout"
                },
                "type": {
                  "type": "string",
                  "enum": [
                    "text",
                    "number",
                    "tel"
                  ],
                  "description": "Input type hint for rendering"
                },
                "required": {
                  "type": "boolean",
                  "description": "Whether the field is mandatory"
                },
                "regex": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "Accepted patterns (value must match at least one)"
                },
                "options": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "value": {
                        "type": "string",
                        "description": "Option value submitted on payout"
                      },
                      "label": {
                        "type": "string",
                        "description": "Option label (may itself be an i18n key)"
                      },
                      "i18nKey": {
                        "type": "string",
                        "description": "Optional i18n key for the option label — the client resolves it"
                      }
                    },
                    "required": [
                      "value",
                      "label"
                    ],
                    "additionalProperties": false
                  },
                  "description": "Fixed select options, when applicable"
                },
                "widget": {
                  "type": "string",
                  "enum": [
                    "network"
                  ],
                  "description": "When \"network\", render a picker fed by GET /v1/currencies/:currency/networks"
                },
                "i18nKey": {
                  "type": "string",
                  "description": "Locale-agnostic i18n key — the client resolves the label"
                },
                "validator": {
                  "type": "string",
                  "enum": [
                    "iban",
                    "clabe"
                  ],
                  "description": "Named client-side validator to run in addition to regex"
                },
                "normalize": {
                  "type": "string",
                  "enum": [
                    "stripSpacesUpper",
                    "upper"
                  ],
                  "description": "Normalization the client applies before validating/submitting"
                }
              },
              "required": [
                "name",
                "type",
                "required",
                "regex",
                "i18nKey"
              ],
              "additionalProperties": false,
              "description": "A single payout field descriptor"
            },
            "description": "Ordered list of fields to collect for the payout"
          },
          "supportsNetworkDiscovery": {
            "type": "boolean",
            "description": "Whether GET /v1/currencies/:currency/networks returns networks for this corridor"
          },
          "networkDiscoveryRail": {
            "type": "string",
            "description": "Rail to pass to /networks?rail= for this method, when applicable"
          },
          "destinationType": {
            "type": "string",
            "description": "The value to send as `destinationTransferData.type` when you create the order or withdrawal for this method — the SCREAMING_SNAKE rail literal, not the camelCase `method` above (e.g. `BANK_DEPOSIT_VEN` for method `bankDepositVEN`). Present on every response this endpoint returns: it serves fiat payout corridors and each one has a rail literal. The field is declared optional because the derivation omits an ambiguous method rather than guessing one — `cryptoWallet` is the only ambiguous method and no fiat payout corridor exposes it. For a **crypto** payout take the chain literal from the `type` enum of `destinationTransferData` itself (`ETH`, `MATIC`, `TRON`, `SOL`, …), which lists every accepted value.",
            "example": "BANK_DEPOSIT_VEN"
          }
        },
        "required": [
          "corridor",
          "method",
          "fields",
          "supportsNetworkDiscovery"
        ],
        "additionalProperties": false,
        "description": "Payout field schema for a (currency, method) corridor"
      },
      "PayinSchemaResponse": {
        "type": "object",
        "properties": {
          "corridor": {
            "type": "object",
            "properties": {
              "currency": {
                "type": "string",
                "description": "The currency this corridor describes"
              },
              "direction": {
                "type": "string",
                "enum": [
                  "payin",
                  "payout"
                ],
                "description": "Whether this corridor collects money (`payin`) or pays it out (`payout`)"
              },
              "candidates": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "party": {
                      "type": "string",
                      "enum": [
                        "first_party",
                        "third_party"
                      ],
                      "description": "Whose money moves. `first_party` is the entity that owns the account; `third_party` is a counterparty — a payout recipient, or a payer sending into a shared collection account."
                    },
                    "payerIdentity": {
                      "type": "string",
                      "enum": [
                        "none",
                        "declared",
                        "verified"
                      ],
                      "description": "How deeply the payer must be identified. `none` — nothing collected. `declared` — identity data submitted with the transaction, no verification flow. `verified` — documents plus approval."
                    },
                    "receiverIdentity": {
                      "type": "string",
                      "enum": [
                        "none",
                        "declared",
                        "verified"
                      ],
                      "description": "How deeply the receiver must be identified, on the same scale as `payerIdentity`"
                    },
                    "methods": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Methods this candidate alone can service — a subset of the corridor-wide `methods`"
                    },
                    "settledWith": {
                      "type": "string",
                      "description": "Held currency this candidate settles into, e.g. `USDC`. Informational: it never changes what you send or what the recipient gets."
                    },
                    "collectionModel": {
                      "type": "string",
                      "enum": [
                        "shared_account",
                        "per_user",
                        "per_transaction",
                        "linked_account_pull"
                      ],
                      "description": "How a payin is funded. `shared_account` — one collection account with a reference per payment. `per_user` — a dedicated account per account holder. `per_transaction` — fresh details issued for each payment. `linked_account_pull` — no details to send to: the funds are debited from a bank account the account holder linked."
                    }
                  },
                  "required": [
                    "party",
                    "payerIdentity",
                    "receiverIdentity",
                    "methods"
                  ],
                  "additionalProperties": false
                },
                "description": "The routes that can service this corridor, in fallback order. More than one means the corridor has redundancy."
              },
              "methods": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "description": "Every method available on this corridor — the union across all candidates. Compare with a candidate’s own `methods`, which is only what that route supports."
              },
              "requiresIdentity": {
                "type": "boolean",
                "description": "True when at least one candidate needs payer or receiver identity"
              }
            },
            "required": [
              "currency",
              "direction",
              "candidates",
              "methods",
              "requiresIdentity"
            ],
            "additionalProperties": false,
            "description": "Abstract corridor descriptor (no provider names)"
          },
          "payinModels": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "per_user",
                "shared_account",
                "per_transaction",
                "linked_account_pull"
              ]
            },
            "description": "Deterministic union of collection models across payin providers (declaration order)"
          },
          "payinModel": {
            "type": "string",
            "nullable": true,
            "enum": [
              "per_user",
              "shared_account",
              "per_transaction",
              "linked_account_pull"
            ],
            "description": "Primary (declaration-order head) collection model — provisional when primaryProviderOnly is true"
          },
          "originMethods": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Origin (collection) methods the customer may use to deposit"
          },
          "payinMethods": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "bank",
                    "mobileMoney",
                    "pix"
                  ]
                },
                "rail": {
                  "type": "string"
                }
              },
              "required": [
                "type",
                "rail"
              ]
            },
            "description": "Payer-facing collection channels: abstract channel type plus the canonical originRail to send on a quote. Empty when the corridor declares no per-currency rail (EUR/USD/GBP, crypto) — those are unguarded and you may pick your own rail."
          },
          "acceptedOriginRails": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Every originRail a quote will be ACCEPTED with for this currency — the canonical rails above plus equivalent spellings of the same channel (e.g. ARS accepts BANK_DEPOSIT_AR and ARGENTINA_BANK_TRANSFER). Empty means the corridor is unguarded. Read this to discover the rail the quote requires instead of discovering it through a 400."
          },
          "primaryProviderOnly": {
            "type": "boolean",
            "description": "True when >1 payin provider serves this currency, so payinModel is the provisional head"
          }
        },
        "required": [
          "corridor",
          "payinModels",
          "payinModel",
          "originMethods",
          "payinMethods",
          "acceptedOriginRails",
          "primaryProviderOnly"
        ],
        "additionalProperties": false,
        "description": "Abstract payin schema for a currency (deposit instructions live on the order)"
      },
      "IdentitySchemaResponse": {
        "type": "object",
        "properties": {
          "corridor": {
            "type": "object",
            "properties": {
              "currency": {
                "type": "string",
                "description": "The currency this corridor describes"
              },
              "direction": {
                "type": "string",
                "enum": [
                  "payin",
                  "payout"
                ],
                "description": "Whether this corridor collects money (`payin`) or pays it out (`payout`)"
              },
              "candidates": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "party": {
                      "type": "string",
                      "enum": [
                        "first_party",
                        "third_party"
                      ],
                      "description": "Whose money moves. `first_party` is the entity that owns the account; `third_party` is a counterparty — a payout recipient, or a payer sending into a shared collection account."
                    },
                    "payerIdentity": {
                      "type": "string",
                      "enum": [
                        "none",
                        "declared",
                        "verified"
                      ],
                      "description": "How deeply the payer must be identified. `none` — nothing collected. `declared` — identity data submitted with the transaction, no verification flow. `verified` — documents plus approval."
                    },
                    "receiverIdentity": {
                      "type": "string",
                      "enum": [
                        "none",
                        "declared",
                        "verified"
                      ],
                      "description": "How deeply the receiver must be identified, on the same scale as `payerIdentity`"
                    },
                    "methods": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Methods this candidate alone can service — a subset of the corridor-wide `methods`"
                    },
                    "settledWith": {
                      "type": "string",
                      "description": "Held currency this candidate settles into, e.g. `USDC`. Informational: it never changes what you send or what the recipient gets."
                    },
                    "collectionModel": {
                      "type": "string",
                      "enum": [
                        "shared_account",
                        "per_user",
                        "per_transaction",
                        "linked_account_pull"
                      ],
                      "description": "How a payin is funded. `shared_account` — one collection account with a reference per payment. `per_user` — a dedicated account per account holder. `per_transaction` — fresh details issued for each payment. `linked_account_pull` — no details to send to: the funds are debited from a bank account the account holder linked."
                    }
                  },
                  "required": [
                    "party",
                    "payerIdentity",
                    "receiverIdentity",
                    "methods"
                  ],
                  "additionalProperties": false
                },
                "description": "The routes that can service this corridor, in fallback order. More than one means the corridor has redundancy."
              },
              "methods": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "description": "Every method available on this corridor — the union across all candidates. Compare with a candidate’s own `methods`, which is only what that route supports."
              },
              "requiresIdentity": {
                "type": "boolean",
                "description": "True when at least one candidate needs payer or receiver identity"
              }
            },
            "required": [
              "currency",
              "direction",
              "candidates",
              "methods",
              "requiresIdentity"
            ],
            "additionalProperties": false,
            "description": "Abstract corridor descriptor (no provider names)"
          },
          "direction": {
            "type": "string",
            "enum": [
              "payin",
              "payout"
            ],
            "description": "The corridor direction this identity schema describes"
          },
          "entityType": {
            "type": "string",
            "enum": [
              "individual",
              "organisation"
            ],
            "description": "The party entity type (KYC vs KYB field set)"
          },
          "identityFlow": {
            "type": "string",
            "enum": [
              "none",
              "declared",
              "verified"
            ],
            "description": "Identity depth: none (no identity), declared (collect metadata), verified (full KYC/KYB)"
          },
          "fields": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string",
                  "description": "Field name to submit on the payout"
                },
                "type": {
                  "type": "string",
                  "enum": [
                    "text",
                    "number",
                    "tel"
                  ],
                  "description": "Input type hint for rendering"
                },
                "required": {
                  "type": "boolean",
                  "description": "Whether the field is mandatory"
                },
                "regex": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "Accepted patterns (value must match at least one)"
                },
                "options": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "value": {
                        "type": "string",
                        "description": "Option value submitted on payout"
                      },
                      "label": {
                        "type": "string",
                        "description": "Option label (may itself be an i18n key)"
                      },
                      "i18nKey": {
                        "type": "string",
                        "description": "Optional i18n key for the option label — the client resolves it"
                      }
                    },
                    "required": [
                      "value",
                      "label"
                    ],
                    "additionalProperties": false
                  },
                  "description": "Fixed select options, when applicable"
                },
                "widget": {
                  "type": "string",
                  "enum": [
                    "network"
                  ],
                  "description": "When \"network\", render a picker fed by GET /v1/currencies/:currency/networks"
                },
                "i18nKey": {
                  "type": "string",
                  "description": "Locale-agnostic i18n key — the client resolves the label"
                },
                "validator": {
                  "type": "string",
                  "enum": [
                    "iban",
                    "clabe"
                  ],
                  "description": "Named client-side validator to run in addition to regex"
                },
                "normalize": {
                  "type": "string",
                  "enum": [
                    "stripSpacesUpper",
                    "upper"
                  ],
                  "description": "Normalization the client applies before validating/submitting"
                }
              },
              "required": [
                "name",
                "type",
                "required",
                "regex",
                "i18nKey"
              ],
              "additionalProperties": false,
              "description": "A single payout field descriptor"
            },
            "description": "Declared-identity metadata fields to collect (empty unless identityFlow is \"declared\")"
          },
          "requiresWidget": {
            "type": "boolean",
            "description": "When true, identity is collected via a verification widget (verified individual)"
          },
          "kybIntake": {
            "type": "string",
            "enum": [
              "manual_review"
            ],
            "description": "Present for verified organisations — KYB is a manual review intake"
          }
        },
        "required": [
          "corridor",
          "direction",
          "entityType",
          "identityFlow",
          "fields",
          "requiresWidget"
        ],
        "additionalProperties": false,
        "description": "Per-corridor identity schema for a (currency, direction, entityType)"
      },
      "DocumentationSchemaResponse": {
        "type": "object",
        "properties": {
          "method": {
            "type": "string",
            "description": "The payout method this documentation applies to"
          },
          "required": {
            "type": "boolean",
            "description": "Whether documentation must be supplied before payout"
          },
          "fields": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string",
                  "description": "Field name to submit / attach on the payout"
                },
                "type": {
                  "type": "string",
                  "enum": [
                    "text",
                    "number",
                    "tel",
                    "file",
                    "group"
                  ],
                  "description": "Input type hint for rendering"
                },
                "required": {
                  "type": "boolean",
                  "description": "Whether the field is mandatory"
                },
                "regex": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "Accepted patterns (value must match at least one)"
                },
                "i18nKey": {
                  "type": "string",
                  "description": "Locale-agnostic i18n key — the client resolves the label"
                },
                "accept": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "For file fields: accepted MIME types AND filename extensions (e.g. application/pdf, .pdf) — match on either, since some browsers report an empty file type"
                },
                "maxSizeMb": {
                  "type": "number",
                  "description": "For file fields: maximum upload size in megabytes"
                },
                "options": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "value": {
                        "type": "string",
                        "description": "Value to submit for this choice"
                      },
                      "label": {
                        "type": "string",
                        "description": "Human-readable fallback label"
                      },
                      "i18nKey": {
                        "type": "string",
                        "description": "i18n key the client resolves in preference to `label`"
                      }
                    },
                    "required": [
                      "value",
                      "label"
                    ]
                  },
                  "description": "Fixed select options, when the field is a closed choice"
                },
                "repeatable": {
                  "type": "boolean",
                  "description": "For group fields: whether the sub-form may be repeated as a list"
                },
                "min": {
                  "type": "number",
                  "description": "For repeatable group fields: minimum number of entries"
                },
                "max": {
                  "type": "number",
                  "description": "For repeatable group fields: maximum number of entries"
                },
                "fields": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "name": {
                        "type": "string",
                        "description": "Field name to submit / attach on the payout"
                      },
                      "type": {
                        "type": "string",
                        "enum": [
                          "text",
                          "number",
                          "tel",
                          "file",
                          "group"
                        ],
                        "description": "Input type hint for rendering"
                      },
                      "required": {
                        "type": "boolean",
                        "description": "Whether the field is mandatory"
                      },
                      "regex": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "Accepted patterns (value must match at least one)"
                      },
                      "i18nKey": {
                        "type": "string",
                        "description": "Locale-agnostic i18n key — the client resolves the label"
                      },
                      "accept": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        },
                        "description": "For file fields: accepted MIME types AND filename extensions (e.g. application/pdf, .pdf) — match on either, since some browsers report an empty file type"
                      },
                      "maxSizeMb": {
                        "type": "number",
                        "description": "For file fields: maximum upload size in megabytes"
                      },
                      "options": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "value": {
                              "type": "string",
                              "description": "Value to submit for this choice"
                            },
                            "label": {
                              "type": "string",
                              "description": "Human-readable fallback label"
                            },
                            "i18nKey": {
                              "type": "string",
                              "description": "i18n key the client resolves in preference to `label`"
                            }
                          },
                          "required": [
                            "value",
                            "label"
                          ]
                        },
                        "description": "Fixed select options, when the field is a closed choice"
                      },
                      "repeatable": {
                        "type": "boolean",
                        "description": "For group fields: whether the sub-form may be repeated as a list"
                      },
                      "min": {
                        "type": "number",
                        "description": "For repeatable group fields: minimum number of entries"
                      },
                      "max": {
                        "type": "number",
                        "description": "For repeatable group fields: maximum number of entries"
                      }
                    },
                    "required": [
                      "name",
                      "type",
                      "required",
                      "regex",
                      "i18nKey"
                    ],
                    "additionalProperties": false
                  },
                  "description": "For group fields: the sub-field manifest rendered inside each entry"
                }
              },
              "required": [
                "name",
                "type",
                "required",
                "regex",
                "i18nKey"
              ],
              "additionalProperties": false,
              "description": "A single documentation field descriptor for a corridor"
            },
            "description": "Ordered list of documentation fields to collect (empty when none)"
          },
          "allowsAttachments": {
            "type": "boolean",
            "description": "Whether free-form supporting attachments may be added"
          },
          "attachmentRequired": {
            "type": "boolean",
            "description": "Whether at least one attachment is mandatory"
          }
        },
        "required": [
          "method",
          "required",
          "fields",
          "allowsAttachments",
          "attachmentRequired"
        ],
        "additionalProperties": false,
        "description": "Trade-documentation requirement for a (currency, method) payout corridor"
      },
      "PayinCountriesResponse": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "code": {
              "type": "string",
              "description": "ISO-3166 alpha-2 country code",
              "example": "SN"
            },
            "name": {
              "type": "string",
              "description": "Country name",
              "example": "Senegal"
            }
          },
          "required": [
            "code",
            "name"
          ],
          "additionalProperties": false,
          "description": "A payer-selectable collection country for a multi-country currency"
        },
        "description": "Collection countries a payer may select as origin for a multi-country currency (empty for single-country currencies)"
      },
      "CreateAmlScreeningRequest": {
        "type": "object",
        "properties": {
          "entity": {
            "type": "object",
            "properties": {
              "entityType": {
                "type": "string",
                "enum": [
                  "INDIVIDUAL",
                  "COMPANY"
                ],
                "description": "Whether the subject is a natural person or an organisation."
              },
              "firstName": {
                "type": "string",
                "maxLength": 256,
                "description": "Given name of an individual subject."
              },
              "lastName": {
                "type": "string",
                "maxLength": 256,
                "description": "Family name of an individual subject."
              },
              "fullName": {
                "type": "string",
                "maxLength": 256,
                "description": "Full name of the subject. Accepted for both individuals and organisations."
              },
              "companyName": {
                "type": "string",
                "maxLength": 256,
                "description": "Legal name of an organisation subject."
              },
              "email": {
                "type": "string",
                "maxLength": 256,
                "format": "email",
                "description": "Contact email used to resolve an existing verified subject."
              },
              "dateOfBirth": {
                "type": "string",
                "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
                "description": "Date of birth of an individual subject (YYYY-MM-DD)."
              },
              "nationality": {
                "type": "string",
                "enum": [
                  "US",
                  "CA",
                  "GB",
                  "DE",
                  "FR",
                  "AU",
                  "JP",
                  "KR",
                  "SE",
                  "NO",
                  "DK",
                  "FI",
                  "NL",
                  "BE",
                  "CH",
                  "AT",
                  "NZ",
                  "SG",
                  "IE",
                  "LU",
                  "PT",
                  "ES",
                  "IT",
                  "GR",
                  "CZ",
                  "PL",
                  "HU",
                  "SK",
                  "SI",
                  "EE",
                  "LT",
                  "LV",
                  "IS",
                  "MT",
                  "CY",
                  "HR",
                  "RO",
                  "BG",
                  "BR",
                  "AR",
                  "CL",
                  "MX",
                  "CO",
                  "PE",
                  "PA",
                  "UY",
                  "BO",
                  "ZA",
                  "NG",
                  "KE",
                  "GH",
                  "TZ",
                  "UG",
                  "RW",
                  "MW",
                  "ZM",
                  "BW",
                  "CD",
                  "CI",
                  "CM",
                  "IL",
                  "AE",
                  "QA",
                  "SA",
                  "OM",
                  "KW",
                  "BH",
                  "MY",
                  "PH",
                  "TH",
                  "VN",
                  "ID",
                  "IN",
                  "LK",
                  "NP",
                  "BD",
                  "PK",
                  "EG",
                  "MA",
                  "DZ",
                  "TN",
                  "JO",
                  "LB",
                  "TR",
                  "KH",
                  "MM",
                  "LA",
                  "EN",
                  "BT",
                  "VE",
                  "TW",
                  "HK",
                  "CN"
                ],
                "description": "Nationality of an individual subject (ISO-3166 alpha-2)."
              },
              "countryOfResidence": {
                "type": "string",
                "enum": [
                  "US",
                  "CA",
                  "GB",
                  "DE",
                  "FR",
                  "AU",
                  "JP",
                  "KR",
                  "SE",
                  "NO",
                  "DK",
                  "FI",
                  "NL",
                  "BE",
                  "CH",
                  "AT",
                  "NZ",
                  "SG",
                  "IE",
                  "LU",
                  "PT",
                  "ES",
                  "IT",
                  "GR",
                  "CZ",
                  "PL",
                  "HU",
                  "SK",
                  "SI",
                  "EE",
                  "LT",
                  "LV",
                  "IS",
                  "MT",
                  "CY",
                  "HR",
                  "RO",
                  "BG",
                  "BR",
                  "AR",
                  "CL",
                  "MX",
                  "CO",
                  "PE",
                  "PA",
                  "UY",
                  "BO",
                  "ZA",
                  "NG",
                  "KE",
                  "GH",
                  "TZ",
                  "UG",
                  "RW",
                  "MW",
                  "ZM",
                  "BW",
                  "CD",
                  "CI",
                  "CM",
                  "IL",
                  "AE",
                  "QA",
                  "SA",
                  "OM",
                  "KW",
                  "BH",
                  "MY",
                  "PH",
                  "TH",
                  "VN",
                  "ID",
                  "IN",
                  "LK",
                  "NP",
                  "BD",
                  "PK",
                  "EG",
                  "MA",
                  "DZ",
                  "TN",
                  "JO",
                  "LB",
                  "TR",
                  "KH",
                  "MM",
                  "LA",
                  "EN",
                  "BT",
                  "VE",
                  "TW",
                  "HK",
                  "CN"
                ],
                "description": "Country of residence of the subject (ISO-3166 alpha-2)."
              },
              "taxIdentificationNumber": {
                "type": "string",
                "maxLength": 64,
                "description": "Tax identification number of the subject."
              },
              "taxIdentificationType": {
                "type": "string",
                "enum": [
                  "NIF",
                  "NIE",
                  "CIF",
                  "VAT",
                  "OTHER"
                ],
                "description": "Type of the supplied tax identification number."
              },
              "taxIdentificationCountry": {
                "type": "string",
                "enum": [
                  "US",
                  "CA",
                  "GB",
                  "DE",
                  "FR",
                  "AU",
                  "JP",
                  "KR",
                  "SE",
                  "NO",
                  "DK",
                  "FI",
                  "NL",
                  "BE",
                  "CH",
                  "AT",
                  "NZ",
                  "SG",
                  "IE",
                  "LU",
                  "PT",
                  "ES",
                  "IT",
                  "GR",
                  "CZ",
                  "PL",
                  "HU",
                  "SK",
                  "SI",
                  "EE",
                  "LT",
                  "LV",
                  "IS",
                  "MT",
                  "CY",
                  "HR",
                  "RO",
                  "BG",
                  "BR",
                  "AR",
                  "CL",
                  "MX",
                  "CO",
                  "PE",
                  "PA",
                  "UY",
                  "BO",
                  "ZA",
                  "NG",
                  "KE",
                  "GH",
                  "TZ",
                  "UG",
                  "RW",
                  "MW",
                  "ZM",
                  "BW",
                  "CD",
                  "CI",
                  "CM",
                  "IL",
                  "AE",
                  "QA",
                  "SA",
                  "OM",
                  "KW",
                  "BH",
                  "MY",
                  "PH",
                  "TH",
                  "VN",
                  "ID",
                  "IN",
                  "LK",
                  "NP",
                  "BD",
                  "PK",
                  "EG",
                  "MA",
                  "DZ",
                  "TN",
                  "JO",
                  "LB",
                  "TR",
                  "KH",
                  "MM",
                  "LA",
                  "EN",
                  "BT",
                  "VE",
                  "TW",
                  "HK",
                  "CN"
                ],
                "description": "Issuing country of the tax identification number (ISO-3166 alpha-2)."
              },
              "documentNumber": {
                "type": "string",
                "maxLength": 64,
                "description": "Identity document number of an individual subject."
              },
              "documentType": {
                "type": "string",
                "maxLength": 64,
                "description": "Type of the supplied identity document (e.g. passport)."
              },
              "documentCountry": {
                "type": "string",
                "enum": [
                  "US",
                  "CA",
                  "GB",
                  "DE",
                  "FR",
                  "AU",
                  "JP",
                  "KR",
                  "SE",
                  "NO",
                  "DK",
                  "FI",
                  "NL",
                  "BE",
                  "CH",
                  "AT",
                  "NZ",
                  "SG",
                  "IE",
                  "LU",
                  "PT",
                  "ES",
                  "IT",
                  "GR",
                  "CZ",
                  "PL",
                  "HU",
                  "SK",
                  "SI",
                  "EE",
                  "LT",
                  "LV",
                  "IS",
                  "MT",
                  "CY",
                  "HR",
                  "RO",
                  "BG",
                  "BR",
                  "AR",
                  "CL",
                  "MX",
                  "CO",
                  "PE",
                  "PA",
                  "UY",
                  "BO",
                  "ZA",
                  "NG",
                  "KE",
                  "GH",
                  "TZ",
                  "UG",
                  "RW",
                  "MW",
                  "ZM",
                  "BW",
                  "CD",
                  "CI",
                  "CM",
                  "IL",
                  "AE",
                  "QA",
                  "SA",
                  "OM",
                  "KW",
                  "BH",
                  "MY",
                  "PH",
                  "TH",
                  "VN",
                  "ID",
                  "IN",
                  "LK",
                  "NP",
                  "BD",
                  "PK",
                  "EG",
                  "MA",
                  "DZ",
                  "TN",
                  "JO",
                  "LB",
                  "TR",
                  "KH",
                  "MM",
                  "LA",
                  "EN",
                  "BT",
                  "VE",
                  "TW",
                  "HK",
                  "CN"
                ],
                "description": "Issuing country of the identity document (ISO-3166 alpha-2)."
              },
              "companyRegistrationNumber": {
                "type": "string",
                "maxLength": 64,
                "description": "Registration number of an organisation subject."
              },
              "accountId": {
                "type": "string",
                "maxLength": 256,
                "description": "Account in the requesting workspace this subject belongs to."
              }
            },
            "required": [
              "entityType"
            ],
            "additionalProperties": false
          },
          "reason": {
            "type": "string",
            "enum": [
              "ONBOARDING",
              "PRE_TRANSACTION",
              "MANUAL_CHECK",
              "PERIODIC_REVIEW",
              "OTHER"
            ],
            "description": "Why this screening is being requested."
          },
          "reference": {
            "type": "string",
            "maxLength": 64,
            "description": "Optional client reference echoed back on the response."
          }
        },
        "required": [
          "entity",
          "reason"
        ],
        "additionalProperties": false,
        "description": "Request an AML screening for a single individual or organisation.",
        "example": {
          "entity": {
            "entityType": "INDIVIDUAL",
            "firstName": "Jane",
            "lastName": "Doe",
            "dateOfBirth": "1985-04-12",
            "nationality": "ES"
          },
          "reason": "ONBOARDING",
          "reference": "case-2026-0042"
        }
      },
      "AmlScreeningResponse": {
        "type": "object",
        "properties": {
          "screeningId": {
            "type": "string",
            "description": "Identifier of the screening record for correlation and lookup."
          },
          "reference": {
            "type": "string",
            "description": "The client reference supplied on the request, if any."
          },
          "status": {
            "type": "string",
            "enum": [
              "COMPLETED",
              "NOT_COMPLETED",
              "FAILED"
            ],
            "description": "COMPLETED = a screening ran; NOT_COMPLETED = not run (see result/errors); FAILED = the screening could not be performed."
          },
          "result": {
            "type": "string",
            "enum": [
              "CLEAR",
              "POTENTIAL_MATCH",
              "REVIEW_REQUIRED",
              "INSUFFICIENT_DATA",
              "ERROR"
            ],
            "description": "Screening outcome. A potential match is never a confirmed match."
          },
          "match": {
            "type": "boolean",
            "nullable": true,
            "description": "true = at least one potential match; false = clear; null = no definitive screening was performed."
          },
          "potentialMatchCount": {
            "type": "integer",
            "minimum": 0,
            "description": "Number of potential matches surfaced by the screening."
          },
          "reviewRequired": {
            "type": "boolean",
            "description": "Whether the outcome requires manual review before proceeding."
          },
          "screenedAt": {
            "type": "string",
            "description": "ISO-8601 timestamp of when the screening completed, if it did."
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "string",
                  "description": "Stable machine-readable error code."
                },
                "message": {
                  "type": "string",
                  "description": "Human-readable explanation."
                }
              },
              "required": [
                "code",
                "message"
              ]
            },
            "description": "Populated when the screening could not be run (e.g. insufficient data)."
          }
        },
        "required": [
          "screeningId",
          "status",
          "match",
          "potentialMatchCount",
          "reviewRequired"
        ],
        "description": "Result of an AML screening request."
      },
      "CreateAmlCheckRequest": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "minLength": 2,
            "maxLength": 140,
            "description": "Full name of the natural or legal person to verify against sanctions, PEP and watchlist data.",
            "example": "Pedro Sánchez Pérez-Castejón"
          },
          "id": {
            "type": "string",
            "minLength": 3,
            "maxLength": 32,
            "description": "Identifier for your records — a Spanish DNI/NIE/NIF/CIF is recognised and used to infer the subject type; any other national identifier is accepted as-is.",
            "example": "012345678A"
          },
          "entityType": {
            "type": "string",
            "enum": [
              "INDIVIDUAL",
              "COMPANY"
            ],
            "description": "Subject kind. When omitted it is inferred from the id where possible; otherwise the check matches both kinds."
          },
          "reference": {
            "type": "string",
            "minLength": 1,
            "maxLength": 64,
            "description": "Your correlation reference, echoed back on the response."
          }
        },
        "required": [
          "name"
        ],
        "additionalProperties": false
      },
      "AmlCheckResponse": {
        "type": "object",
        "properties": {
          "checkId": {
            "type": "string"
          },
          "reference": {
            "type": "string"
          },
          "status": {
            "type": "string",
            "enum": [
              "COMPLETED",
              "FAILED"
            ]
          },
          "match": {
            "type": "boolean",
            "nullable": true,
            "description": "true = at least one potential match; false = clear; null = the check could not be completed and MUST NOT be read as clear."
          },
          "matchCount": {
            "type": "integer",
            "minimum": 0
          },
          "checkedAt": {
            "type": "string",
            "description": "ISO 8601"
          },
          "results": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "matchId": {
                  "type": "string",
                  "description": "Stable identifier of the matched list entry."
                },
                "name": {
                  "type": "string",
                  "description": "Name as it appears on the list."
                },
                "type": {
                  "type": "string",
                  "enum": [
                    "PERSON",
                    "COMPANY",
                    "OTHER"
                  ]
                },
                "score": {
                  "type": "number",
                  "minimum": 0,
                  "maximum": 1,
                  "description": "Match strength between 0 and 1."
                },
                "flags": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "enum": [
                      "SANCTIONS",
                      "PEP",
                      "WATCHLIST",
                      "CRIME",
                      "OTHER"
                    ]
                  },
                  "description": "Why this entry is listed."
                },
                "title": {
                  "type": "string",
                  "description": "Known role or position."
                },
                "countries": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "Associated countries (ISO 3166-1 alpha-2)."
                },
                "dateOfBirth": {
                  "type": "string",
                  "description": "YYYY-MM-DD where known."
                }
              },
              "required": [
                "matchId",
                "name",
                "type",
                "score",
                "flags",
                "countries"
              ],
              "additionalProperties": false
            },
            "maxItems": 20
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "string",
                  "example": "CHECK_NOT_COMPLETED"
                },
                "message": {
                  "type": "string"
                }
              },
              "required": [
                "code",
                "message"
              ],
              "additionalProperties": false
            },
            "description": "Present when status is FAILED — machine-readable reasons the check could not be completed. Retry with a new check; never read a FAILED check as clear."
          }
        },
        "required": [
          "checkId",
          "status",
          "match",
          "matchCount",
          "checkedAt",
          "results"
        ],
        "additionalProperties": false
      },
      "PublicHealthResponse": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string",
            "enum": [
              "operational",
              "degraded",
              "down"
            ],
            "description": "Overall platform status (the worst of the components)."
          },
          "components": {
            "type": "object",
            "properties": {
              "api": {
                "type": "string",
                "enum": [
                  "operational",
                  "degraded",
                  "down"
                ],
                "description": "The API itself and its core platform infrastructure."
              },
              "payments": {
                "type": "string",
                "enum": [
                  "operational",
                  "degraded",
                  "down"
                ],
                "description": "Collecting funds and paying out across the supported rails."
              },
              "identity": {
                "type": "string",
                "enum": [
                  "operational",
                  "degraded",
                  "down"
                ],
                "description": "Identity verification (KYC/KYB) processing."
              }
            },
            "required": [
              "api",
              "payments",
              "identity"
            ],
            "description": "Per-area status."
          },
          "updatedAt": {
            "type": "string",
            "description": "ISO-8601 timestamp of the most recent underlying health signal.",
            "examples": [
              "2026-07-06T12:00:00.000Z"
            ]
          }
        },
        "required": [
          "status",
          "components",
          "updatedAt"
        ]
      }
    },
    "parameters": {}
  },
  "paths": {
    "/v1/pairs": {
      "get": {
        "summary": "Get available pairs",
        "description": "Returns the list of currency pairs available for quoting in the authenticated workspace (e.g. `EUR/USDC`, `BRL/USDT`). Use these pair strings as the `originCurrency`/`destinationCurrency` inputs when creating a quote.",
        "tags": [
          "Pairs"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "responses": {
          "200": {
            "description": "Successful retrieval of pairs",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "pairs": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "pattern": "^[A-Z]{3,5}\\/[A-Z]{3,5}$",
                        "description": "Currency pair in the format BASE/QUOTE"
                      },
                      "description": "List of currency pairs"
                    }
                  },
                  "required": [
                    "pairs"
                  ],
                  "description": "Response schema for getting currency pairs",
                  "example": {
                    "pairs": [
                      "USDT/EUR",
                      "USDC/EUR"
                    ]
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/pairs\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/pairs\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/pairs\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/quotes": {
      "post": {
        "summary": "Create a quote",
        "description": "\nCreates a real-time price quote for a currency pair. Quotes are **workspace-scoped and user-agnostic** — no customer identity is required at this step.\n\n### Two-step B2C flow\n\n**Step 1 — Create a quote** `POST /v1/quotes`\n\nProvide the currency pair, rails, and either `originAmount` or `destinationAmount`. The response includes a `quoteId`, the locked exchange rate, expected fees, and expiry time.\n\n**Step 2 — Create an order** `POST /v1/orders`\n\nPass the `quoteId` from step 1 together with the customer's identity in `userData.userEmail` (and KYC data if required). This is where the end customer is associated with the transaction.\n\n### Important\n\n- Quotes expire after a short window; create the order promptly after receiving the quote.\n",
        "tags": [
          "Quotes"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "originCurrency": {
                        "anyOf": [
                          {
                            "type": "string",
                            "enum": [
                              "EUR",
                              "USD",
                              "GBP",
                              "BRL",
                              "MXN",
                              "ARS",
                              "COP",
                              "PEN",
                              "NGN",
                              "KES",
                              "TZS",
                              "UGX",
                              "RWF",
                              "MWK",
                              "ZMW",
                              "XOF",
                              "XAF",
                              "BWP"
                            ]
                          },
                          {
                            "type": "string",
                            "enum": [
                              "USDC",
                              "USDT",
                              "CUSD",
                              "BTC",
                              "ETH",
                              "POL",
                              "SOL",
                              "TRX",
                              "AVAX",
                              "XRP",
                              "BNB"
                            ]
                          }
                        ],
                        "description": "The currency code of the origin currency",
                        "examples": [
                          "EUR"
                        ]
                      },
                      "originRail": {
                        "type": "string",
                        "enum": [
                          "BALANCE",
                          "SEPA",
                          "BTC",
                          "ETH",
                          "MATIC",
                          "POLYGON",
                          "CELO",
                          "TRON",
                          "SOLANA",
                          "ARBITRUM",
                          "OPTIMISM",
                          "AVALANCHE",
                          "BSC",
                          "BASE",
                          "XRP",
                          "PIX_BR",
                          "UPI",
                          "IMPS",
                          "TRY_BANK_TRANSFER",
                          "AED_BANK_TRANSFER",
                          "SPEI",
                          "IDR_BANK_TRANSFER",
                          "CREDIT_CARD",
                          "THAI_QR",
                          "VIET_QR",
                          "GCASH",
                          "ARGENTINA_BANK_TRANSFER",
                          "PSE",
                          "CLABE",
                          "PIX",
                          "BANK_DEPOSIT_COL",
                          "BANK_DEPOSIT_AR",
                          "BANK_DEPOSIT_CL",
                          "BANK_DEPOSIT_PE",
                          "BANK_DEPOSIT_BO",
                          "BANK_DEPOSIT_BR",
                          "BANK_DEPOSIT_NG",
                          "BANK_DEPOSIT_KE",
                          "BANK_DEPOSIT_GH",
                          "BANK_DEPOSIT_ZA",
                          "BANK_DEPOSIT_TZ",
                          "BANK_DEPOSIT_UG",
                          "BANK_DEPOSIT_RW",
                          "BANK_DEPOSIT_MW",
                          "BANK_DEPOSIT_ZM",
                          "BANK_DEPOSIT_BW",
                          "BANK_DEPOSIT_CD",
                          "BANK_DEPOSIT_XOF",
                          "BANK_DEPOSIT_XAF",
                          "MOBILE_MONEY_NG",
                          "MOBILE_MONEY_KE",
                          "MOBILE_MONEY_GH",
                          "MOBILE_MONEY_ZA",
                          "MOBILE_MONEY_TZ",
                          "MOBILE_MONEY_UG",
                          "MOBILE_MONEY_RW",
                          "MOBILE_MONEY_MW",
                          "MOBILE_MONEY_ZM",
                          "MOBILE_MONEY_BW",
                          "MOBILE_MONEY_CD",
                          "MOBILE_MONEY_XOF",
                          "MOBILE_MONEY_XAF",
                          "ACH_US",
                          "GBP_BANK_TRANSFER"
                        ],
                        "description": "The rail of the origin currency. Crypto origin rails use NETWORK names (e.g. `SOLANA` for SOL, `MATIC` for POL/USDC, `BSC` for BNB)."
                      },
                      "destinationCurrency": {
                        "type": "string",
                        "enum": [
                          "EUR",
                          "USD",
                          "GBP",
                          "BRL",
                          "COP",
                          "MXN",
                          "ARS",
                          "CLP",
                          "VES",
                          "TWD",
                          "BOB",
                          "PEN",
                          "NGN",
                          "KES",
                          "ZAR",
                          "TZS",
                          "UGX",
                          "RWF",
                          "MWK",
                          "ZMW",
                          "XOF",
                          "XAF",
                          "BWP",
                          "HKD",
                          "CNY",
                          "USDC",
                          "USDT",
                          "ETH",
                          "BTC",
                          "MATIC",
                          "SOL",
                          "TRX",
                          "AVAX",
                          "DOT",
                          "XRP",
                          "POL",
                          "ADA",
                          "ALGO"
                        ],
                        "description": "The currency code of the destination currency",
                        "examples": [
                          "VES",
                          "BRL",
                          "USDC"
                        ]
                      },
                      "destinationRail": {
                        "type": "string",
                        "enum": [
                          "SEPA",
                          "ETH",
                          "BTC",
                          "MATIC",
                          "SOL",
                          "TRON",
                          "XRP",
                          "BSC",
                          "AVALANCHE",
                          "ARBITRUM",
                          "OPTIMISM",
                          "PIX_BR",
                          "PHONE_DEPOSIT_VEN",
                          "PHONE_DEPOSIT_MX",
                          "PHONE_DEPOSIT_AR",
                          "PHONE_DEPOSIT_IN",
                          "PHONE_DEPOSIT_VN",
                          "BANK_DEPOSIT_VEN",
                          "BANK_DEPOSIT_BR",
                          "BANK_DEPOSIT_MX",
                          "BALANCE",
                          "CELO",
                          "BASE",
                          "UPI",
                          "IMPS",
                          "THAI_QR",
                          "VIET_QR",
                          "GCASH",
                          "ARGENTINA_BANK_TRANSFER",
                          "PSE",
                          "BANK_DEPOSIT_COL",
                          "BRE_B_COP",
                          "ACH_COP",
                          "BANK_DEPOSIT_TW",
                          "BANK_DEPOSIT_AR",
                          "BANK_DEPOSIT_CL",
                          "BANK_DEPOSIT_BO",
                          "BANK_DEPOSIT_PE",
                          "BANK_DEPOSIT_PEN",
                          "BANK_DEPOSIT_NG",
                          "BANK_DEPOSIT_KE",
                          "BANK_DEPOSIT_GH",
                          "BANK_DEPOSIT_ZA",
                          "BANK_DEPOSIT_TZ",
                          "BANK_DEPOSIT_UG",
                          "BANK_DEPOSIT_RW",
                          "BANK_DEPOSIT_MW",
                          "BANK_DEPOSIT_ZM",
                          "BANK_DEPOSIT_BW",
                          "BANK_DEPOSIT_CD",
                          "BANK_DEPOSIT_XOF",
                          "BANK_DEPOSIT_XAF",
                          "MOBILE_MONEY_NG",
                          "MOBILE_MONEY_KE",
                          "MOBILE_MONEY_GH",
                          "MOBILE_MONEY_ZA",
                          "MOBILE_MONEY_TZ",
                          "MOBILE_MONEY_UG",
                          "MOBILE_MONEY_RW",
                          "MOBILE_MONEY_MW",
                          "MOBILE_MONEY_ZM",
                          "MOBILE_MONEY_BW",
                          "MOBILE_MONEY_CD",
                          "MOBILE_MONEY_XOF",
                          "MOBILE_MONEY_XAF",
                          "BANK_DEPOSIT_HK",
                          "BANK_DEPOSIT_CN",
                          "GBP_BANK_TRANSFER",
                          "ACH_US",
                          "LINKED_BANK_ACCOUNT"
                        ],
                        "description": "The rail of the destination currency. Solana is the one asymmetric spelling: use `SOL` here (the origin side uses the network name `SOLANA`) — both refer to the Solana network. Other crypto destination rails use network names (`ETH`, `MATIC`, `TRON`, `XRP`, `BSC`, `AVALANCHE`, `ARBITRUM`, `OPTIMISM`, `BASE`)."
                      },
                      "locale": {
                        "type": "string",
                        "enum": [
                          "en",
                          "es",
                          "pt",
                          "it",
                          "fr",
                          "de"
                        ],
                        "description": "The locale of the user"
                      },
                      "customerId": {
                        "type": "string",
                        "description": "Account id the quote is for (External API on-behalf quotes)",
                        "examples": [
                          "d290f1ee-6c54-4b01-90e6-d701748f0851"
                        ]
                      },
                      "customerEmail": {
                        "type": "string",
                        "description": "Account email the quote is for (External API on-behalf quotes)",
                        "examples": [
                          "customer@example.com"
                        ]
                      },
                      "creatorMarkup": {
                        "type": "number",
                        "minimum": 0,
                        "exclusiveMinimum": true,
                        "maximum": 0.1,
                        "description": "Creator markup as a fraction added on top of the workspace fees (App API only)"
                      },
                      "originAmount": {
                        "type": "number",
                        "minimum": 0,
                        "exclusiveMinimum": true,
                        "description": "The amount in the origin currency (use either originAmount or destinationAmount)",
                        "examples": [
                          100,
                          250,
                          500
                        ]
                      }
                    },
                    "required": [
                      "originCurrency",
                      "destinationCurrency",
                      "originAmount"
                    ],
                    "description": "Quote priced from the amount you send/collect in the origin currency (set `originAmount`).",
                    "title": "QuoteByOriginAmount"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "originCurrency": {
                        "anyOf": [
                          {
                            "type": "string",
                            "enum": [
                              "EUR",
                              "USD",
                              "GBP",
                              "BRL",
                              "MXN",
                              "ARS",
                              "COP",
                              "PEN",
                              "NGN",
                              "KES",
                              "TZS",
                              "UGX",
                              "RWF",
                              "MWK",
                              "ZMW",
                              "XOF",
                              "XAF",
                              "BWP"
                            ]
                          },
                          {
                            "type": "string",
                            "enum": [
                              "USDC",
                              "USDT",
                              "CUSD",
                              "BTC",
                              "ETH",
                              "POL",
                              "SOL",
                              "TRX",
                              "AVAX",
                              "XRP",
                              "BNB"
                            ]
                          }
                        ],
                        "description": "The currency code of the origin currency",
                        "examples": [
                          "EUR"
                        ]
                      },
                      "originRail": {
                        "type": "string",
                        "enum": [
                          "BALANCE",
                          "SEPA",
                          "BTC",
                          "ETH",
                          "MATIC",
                          "POLYGON",
                          "CELO",
                          "TRON",
                          "SOLANA",
                          "ARBITRUM",
                          "OPTIMISM",
                          "AVALANCHE",
                          "BSC",
                          "BASE",
                          "XRP",
                          "PIX_BR",
                          "UPI",
                          "IMPS",
                          "TRY_BANK_TRANSFER",
                          "AED_BANK_TRANSFER",
                          "SPEI",
                          "IDR_BANK_TRANSFER",
                          "CREDIT_CARD",
                          "THAI_QR",
                          "VIET_QR",
                          "GCASH",
                          "ARGENTINA_BANK_TRANSFER",
                          "PSE",
                          "CLABE",
                          "PIX",
                          "BANK_DEPOSIT_COL",
                          "BANK_DEPOSIT_AR",
                          "BANK_DEPOSIT_CL",
                          "BANK_DEPOSIT_PE",
                          "BANK_DEPOSIT_BO",
                          "BANK_DEPOSIT_BR",
                          "BANK_DEPOSIT_NG",
                          "BANK_DEPOSIT_KE",
                          "BANK_DEPOSIT_GH",
                          "BANK_DEPOSIT_ZA",
                          "BANK_DEPOSIT_TZ",
                          "BANK_DEPOSIT_UG",
                          "BANK_DEPOSIT_RW",
                          "BANK_DEPOSIT_MW",
                          "BANK_DEPOSIT_ZM",
                          "BANK_DEPOSIT_BW",
                          "BANK_DEPOSIT_CD",
                          "BANK_DEPOSIT_XOF",
                          "BANK_DEPOSIT_XAF",
                          "MOBILE_MONEY_NG",
                          "MOBILE_MONEY_KE",
                          "MOBILE_MONEY_GH",
                          "MOBILE_MONEY_ZA",
                          "MOBILE_MONEY_TZ",
                          "MOBILE_MONEY_UG",
                          "MOBILE_MONEY_RW",
                          "MOBILE_MONEY_MW",
                          "MOBILE_MONEY_ZM",
                          "MOBILE_MONEY_BW",
                          "MOBILE_MONEY_CD",
                          "MOBILE_MONEY_XOF",
                          "MOBILE_MONEY_XAF",
                          "ACH_US",
                          "GBP_BANK_TRANSFER"
                        ],
                        "description": "The rail of the origin currency. Crypto origin rails use NETWORK names (e.g. `SOLANA` for SOL, `MATIC` for POL/USDC, `BSC` for BNB)."
                      },
                      "destinationCurrency": {
                        "type": "string",
                        "enum": [
                          "EUR",
                          "USD",
                          "GBP",
                          "BRL",
                          "COP",
                          "MXN",
                          "ARS",
                          "CLP",
                          "VES",
                          "TWD",
                          "BOB",
                          "PEN",
                          "NGN",
                          "KES",
                          "ZAR",
                          "TZS",
                          "UGX",
                          "RWF",
                          "MWK",
                          "ZMW",
                          "XOF",
                          "XAF",
                          "BWP",
                          "HKD",
                          "CNY",
                          "USDC",
                          "USDT",
                          "ETH",
                          "BTC",
                          "MATIC",
                          "SOL",
                          "TRX",
                          "AVAX",
                          "DOT",
                          "XRP",
                          "POL",
                          "ADA",
                          "ALGO"
                        ],
                        "description": "The currency code of the destination currency",
                        "examples": [
                          "VES",
                          "BRL",
                          "USDC"
                        ]
                      },
                      "destinationRail": {
                        "type": "string",
                        "enum": [
                          "SEPA",
                          "ETH",
                          "BTC",
                          "MATIC",
                          "SOL",
                          "TRON",
                          "XRP",
                          "BSC",
                          "AVALANCHE",
                          "ARBITRUM",
                          "OPTIMISM",
                          "PIX_BR",
                          "PHONE_DEPOSIT_VEN",
                          "PHONE_DEPOSIT_MX",
                          "PHONE_DEPOSIT_AR",
                          "PHONE_DEPOSIT_IN",
                          "PHONE_DEPOSIT_VN",
                          "BANK_DEPOSIT_VEN",
                          "BANK_DEPOSIT_BR",
                          "BANK_DEPOSIT_MX",
                          "BALANCE",
                          "CELO",
                          "BASE",
                          "UPI",
                          "IMPS",
                          "THAI_QR",
                          "VIET_QR",
                          "GCASH",
                          "ARGENTINA_BANK_TRANSFER",
                          "PSE",
                          "BANK_DEPOSIT_COL",
                          "BRE_B_COP",
                          "ACH_COP",
                          "BANK_DEPOSIT_TW",
                          "BANK_DEPOSIT_AR",
                          "BANK_DEPOSIT_CL",
                          "BANK_DEPOSIT_BO",
                          "BANK_DEPOSIT_PE",
                          "BANK_DEPOSIT_PEN",
                          "BANK_DEPOSIT_NG",
                          "BANK_DEPOSIT_KE",
                          "BANK_DEPOSIT_GH",
                          "BANK_DEPOSIT_ZA",
                          "BANK_DEPOSIT_TZ",
                          "BANK_DEPOSIT_UG",
                          "BANK_DEPOSIT_RW",
                          "BANK_DEPOSIT_MW",
                          "BANK_DEPOSIT_ZM",
                          "BANK_DEPOSIT_BW",
                          "BANK_DEPOSIT_CD",
                          "BANK_DEPOSIT_XOF",
                          "BANK_DEPOSIT_XAF",
                          "MOBILE_MONEY_NG",
                          "MOBILE_MONEY_KE",
                          "MOBILE_MONEY_GH",
                          "MOBILE_MONEY_ZA",
                          "MOBILE_MONEY_TZ",
                          "MOBILE_MONEY_UG",
                          "MOBILE_MONEY_RW",
                          "MOBILE_MONEY_MW",
                          "MOBILE_MONEY_ZM",
                          "MOBILE_MONEY_BW",
                          "MOBILE_MONEY_CD",
                          "MOBILE_MONEY_XOF",
                          "MOBILE_MONEY_XAF",
                          "BANK_DEPOSIT_HK",
                          "BANK_DEPOSIT_CN",
                          "GBP_BANK_TRANSFER",
                          "ACH_US",
                          "LINKED_BANK_ACCOUNT"
                        ],
                        "description": "The rail of the destination currency. Solana is the one asymmetric spelling: use `SOL` here (the origin side uses the network name `SOLANA`) — both refer to the Solana network. Other crypto destination rails use network names (`ETH`, `MATIC`, `TRON`, `XRP`, `BSC`, `AVALANCHE`, `ARBITRUM`, `OPTIMISM`, `BASE`)."
                      },
                      "locale": {
                        "type": "string",
                        "enum": [
                          "en",
                          "es",
                          "pt",
                          "it",
                          "fr",
                          "de"
                        ],
                        "description": "The locale of the user"
                      },
                      "customerId": {
                        "type": "string",
                        "description": "Account id the quote is for (External API on-behalf quotes)",
                        "examples": [
                          "d290f1ee-6c54-4b01-90e6-d701748f0851"
                        ]
                      },
                      "customerEmail": {
                        "type": "string",
                        "description": "Account email the quote is for (External API on-behalf quotes)",
                        "examples": [
                          "customer@example.com"
                        ]
                      },
                      "creatorMarkup": {
                        "type": "number",
                        "minimum": 0,
                        "exclusiveMinimum": true,
                        "maximum": 0.1,
                        "description": "Creator markup as a fraction added on top of the workspace fees (App API only)"
                      },
                      "destinationAmount": {
                        "type": "number",
                        "minimum": 0,
                        "exclusiveMinimum": true,
                        "description": "The amount in the destination currency",
                        "examples": [
                          85,
                          200,
                          450
                        ]
                      }
                    },
                    "required": [
                      "originCurrency",
                      "destinationCurrency",
                      "destinationAmount"
                    ],
                    "description": "Quote priced from the amount the beneficiary receives in the destination currency (set `destinationAmount`).",
                    "title": "QuoteByDestinationAmount"
                  }
                ],
                "description": "Request schema for creating a quote"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful creation of quotes",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "quoteId": {
                      "type": "string",
                      "format": "uuid",
                      "description": "The unique identifier of the created quote",
                      "examples": [
                        "123e4567-e89b-12d3-a456-426614174000",
                        "987f6543-a21c-45d6-b789-012345678901"
                      ]
                    },
                    "originCurrency": {
                      "anyOf": [
                        {
                          "type": "string",
                          "enum": [
                            "EUR",
                            "USD",
                            "GBP",
                            "BRL",
                            "MXN",
                            "ARS",
                            "COP",
                            "PEN",
                            "NGN",
                            "KES",
                            "TZS",
                            "UGX",
                            "RWF",
                            "MWK",
                            "ZMW",
                            "XOF",
                            "XAF",
                            "BWP"
                          ]
                        },
                        {
                          "type": "string",
                          "enum": [
                            "USDC",
                            "USDT",
                            "CUSD",
                            "BTC",
                            "ETH",
                            "POL",
                            "SOL",
                            "TRX",
                            "AVAX",
                            "XRP",
                            "BNB"
                          ]
                        }
                      ],
                      "description": "The currency code of the origin currency",
                      "examples": [
                        "EUR"
                      ]
                    },
                    "originNetwork": {
                      "type": "string",
                      "enum": [
                        "BTC",
                        "ETH",
                        "MATIC",
                        "CELO",
                        "SOLANA",
                        "TRON",
                        "BSC",
                        "XRP",
                        "ARBITRUM",
                        "OPTIMISM",
                        "AVALANCHE",
                        "BASE",
                        "CARDANO"
                      ],
                      "description": "The network of the origin currency if it is crypto",
                      "examples": [
                        "MATIC",
                        "ETH"
                      ]
                    },
                    "originAmount": {
                      "type": "number",
                      "minimum": 0,
                      "exclusiveMinimum": true,
                      "description": "The amount in the origin currency (use either originAmount or destinationAmount)",
                      "examples": [
                        100,
                        250,
                        500
                      ]
                    },
                    "destinationCurrency": {
                      "type": "string",
                      "enum": [
                        "EUR",
                        "USD",
                        "GBP",
                        "BRL",
                        "COP",
                        "MXN",
                        "ARS",
                        "CLP",
                        "VES",
                        "TWD",
                        "BOB",
                        "PEN",
                        "NGN",
                        "KES",
                        "ZAR",
                        "TZS",
                        "UGX",
                        "RWF",
                        "MWK",
                        "ZMW",
                        "XOF",
                        "XAF",
                        "BWP",
                        "HKD",
                        "CNY",
                        "USDC",
                        "USDT",
                        "ETH",
                        "BTC",
                        "MATIC",
                        "SOL",
                        "TRX",
                        "AVAX",
                        "DOT",
                        "XRP",
                        "POL",
                        "ADA",
                        "ALGO"
                      ],
                      "description": "The currency code of the destination currency",
                      "examples": [
                        "BRL",
                        "VES",
                        "USDC",
                        "ETH"
                      ]
                    },
                    "destinationNetwork": {
                      "type": "string",
                      "enum": [
                        "BTC",
                        "ETH",
                        "MATIC",
                        "CELO",
                        "SOLANA",
                        "TRON",
                        "BSC",
                        "XRP",
                        "ARBITRUM",
                        "OPTIMISM",
                        "AVALANCHE",
                        "BASE",
                        "CARDANO"
                      ],
                      "description": "The network of the destination currency if it is crypto",
                      "examples": [
                        "MATIC",
                        "ETH",
                        "CELO"
                      ]
                    },
                    "destinationAmount": {
                      "type": "number",
                      "minimum": 0,
                      "exclusiveMinimum": true,
                      "description": "The amount in the destination currency (use either originAmount or destinationAmount)",
                      "examples": [
                        85,
                        200,
                        450
                      ]
                    },
                    "price": {
                      "type": "number",
                      "minimum": 0,
                      "exclusiveMinimum": true,
                      "description": "The exchange rate price for the quote based on the symbol ex: USDC/EUR",
                      "examples": [
                        0.85,
                        0.92,
                        1.05
                      ]
                    },
                    "conversionRate": {
                      "type": "number",
                      "minimum": 0,
                      "exclusiveMinimum": true,
                      "description": "The conversion rate price for the quote representing 1 originCurrency = X destinationCurrency",
                      "examples": [
                        0.85,
                        0.92,
                        1.05
                      ]
                    },
                    "pair": {
                      "type": "string",
                      "description": "The pair of the quote",
                      "examples": [
                        "USDC/EUR",
                        "BRL/EUR",
                        "COP/EUR"
                      ]
                    },
                    "fee": {
                      "type": "number",
                      "minimum": 0,
                      "description": "The fee associated with the order: (originAmount - fee) / price = destinationAmount",
                      "examples": [
                        1.5,
                        2,
                        3.5
                      ]
                    },
                    "expectedGasFee": {
                      "type": "number",
                      "description": "The expected fee associated with the blockchain transaction",
                      "examples": [
                        1.5,
                        2.2,
                        3
                      ]
                    },
                    "feeCurrency": {
                      "anyOf": [
                        {
                          "type": "string",
                          "enum": [
                            "EUR",
                            "USD",
                            "GBP",
                            "BRL",
                            "MXN",
                            "ARS",
                            "COP",
                            "PEN",
                            "NGN",
                            "KES",
                            "TZS",
                            "UGX",
                            "RWF",
                            "MWK",
                            "ZMW",
                            "XOF",
                            "XAF",
                            "BWP"
                          ]
                        },
                        {
                          "type": "string",
                          "enum": [
                            "USDC",
                            "USDT",
                            "CUSD",
                            "BTC",
                            "ETH",
                            "POL",
                            "SOL",
                            "TRX",
                            "AVAX",
                            "XRP",
                            "BNB"
                          ]
                        }
                      ],
                      "description": "The currency code for the fee",
                      "examples": [
                        "EUR"
                      ]
                    },
                    "expireAt": {
                      "type": "number",
                      "description": "The expiration timestamp of the quote",
                      "examples": [
                        1694291200,
                        1694291210
                      ]
                    },
                    "creatorMarkup": {
                      "type": "object",
                      "properties": {
                        "percentage": {
                          "type": "number"
                        },
                        "amount": {
                          "type": "number"
                        },
                        "currency": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "percentage",
                        "amount",
                        "currency"
                      ],
                      "description": "Creator markup locked on this quote: percentage (fraction), amount in origin currency. Echoed so the creator sees what they will earn if the order succeeds."
                    },
                    "agentMarkup": {
                      "type": "object",
                      "properties": {
                        "percentage": {
                          "type": "number"
                        },
                        "amount": {
                          "type": "number"
                        },
                        "currency": {
                          "type": "string"
                        },
                        "beneficiaryAccountId": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "percentage",
                        "amount",
                        "currency",
                        "beneficiaryAccountId"
                      ],
                      "description": "Introducer-agent markup locked on this quote: percentage (fraction), amount in origin currency, and the agent account credited on success."
                    },
                    "originRail": {
                      "type": "string",
                      "enum": [
                        "BALANCE",
                        "SEPA",
                        "BTC",
                        "ETH",
                        "MATIC",
                        "POLYGON",
                        "CELO",
                        "TRON",
                        "SOLANA",
                        "ARBITRUM",
                        "OPTIMISM",
                        "AVALANCHE",
                        "BSC",
                        "BASE",
                        "XRP",
                        "PIX_BR",
                        "UPI",
                        "IMPS",
                        "TRY_BANK_TRANSFER",
                        "AED_BANK_TRANSFER",
                        "SPEI",
                        "IDR_BANK_TRANSFER",
                        "CREDIT_CARD",
                        "THAI_QR",
                        "VIET_QR",
                        "GCASH",
                        "ARGENTINA_BANK_TRANSFER",
                        "PSE",
                        "CLABE",
                        "PIX",
                        "BANK_DEPOSIT_COL",
                        "BANK_DEPOSIT_AR",
                        "BANK_DEPOSIT_CL",
                        "BANK_DEPOSIT_PE",
                        "BANK_DEPOSIT_BO",
                        "BANK_DEPOSIT_BR",
                        "BANK_DEPOSIT_NG",
                        "BANK_DEPOSIT_KE",
                        "BANK_DEPOSIT_GH",
                        "BANK_DEPOSIT_ZA",
                        "BANK_DEPOSIT_TZ",
                        "BANK_DEPOSIT_UG",
                        "BANK_DEPOSIT_RW",
                        "BANK_DEPOSIT_MW",
                        "BANK_DEPOSIT_ZM",
                        "BANK_DEPOSIT_BW",
                        "BANK_DEPOSIT_CD",
                        "BANK_DEPOSIT_XOF",
                        "BANK_DEPOSIT_XAF",
                        "MOBILE_MONEY_NG",
                        "MOBILE_MONEY_KE",
                        "MOBILE_MONEY_GH",
                        "MOBILE_MONEY_ZA",
                        "MOBILE_MONEY_TZ",
                        "MOBILE_MONEY_UG",
                        "MOBILE_MONEY_RW",
                        "MOBILE_MONEY_MW",
                        "MOBILE_MONEY_ZM",
                        "MOBILE_MONEY_BW",
                        "MOBILE_MONEY_CD",
                        "MOBILE_MONEY_XOF",
                        "MOBILE_MONEY_XAF",
                        "ACH_US",
                        "GBP_BANK_TRANSFER"
                      ],
                      "description": "Rail the origin funds are collected over, echoed from the quote request."
                    },
                    "destinationRail": {
                      "type": "string",
                      "enum": [
                        "SEPA",
                        "ETH",
                        "BTC",
                        "MATIC",
                        "SOL",
                        "TRON",
                        "XRP",
                        "BSC",
                        "AVALANCHE",
                        "ARBITRUM",
                        "OPTIMISM",
                        "PIX_BR",
                        "PHONE_DEPOSIT_VEN",
                        "PHONE_DEPOSIT_MX",
                        "PHONE_DEPOSIT_AR",
                        "PHONE_DEPOSIT_IN",
                        "PHONE_DEPOSIT_VN",
                        "BANK_DEPOSIT_VEN",
                        "BANK_DEPOSIT_BR",
                        "BANK_DEPOSIT_MX",
                        "BALANCE",
                        "CELO",
                        "BASE",
                        "UPI",
                        "IMPS",
                        "THAI_QR",
                        "VIET_QR",
                        "GCASH",
                        "ARGENTINA_BANK_TRANSFER",
                        "PSE",
                        "BANK_DEPOSIT_COL",
                        "BRE_B_COP",
                        "ACH_COP",
                        "BANK_DEPOSIT_TW",
                        "BANK_DEPOSIT_AR",
                        "BANK_DEPOSIT_CL",
                        "BANK_DEPOSIT_BO",
                        "BANK_DEPOSIT_PE",
                        "BANK_DEPOSIT_PEN",
                        "BANK_DEPOSIT_NG",
                        "BANK_DEPOSIT_KE",
                        "BANK_DEPOSIT_GH",
                        "BANK_DEPOSIT_ZA",
                        "BANK_DEPOSIT_TZ",
                        "BANK_DEPOSIT_UG",
                        "BANK_DEPOSIT_RW",
                        "BANK_DEPOSIT_MW",
                        "BANK_DEPOSIT_ZM",
                        "BANK_DEPOSIT_BW",
                        "BANK_DEPOSIT_CD",
                        "BANK_DEPOSIT_XOF",
                        "BANK_DEPOSIT_XAF",
                        "MOBILE_MONEY_NG",
                        "MOBILE_MONEY_KE",
                        "MOBILE_MONEY_GH",
                        "MOBILE_MONEY_ZA",
                        "MOBILE_MONEY_TZ",
                        "MOBILE_MONEY_UG",
                        "MOBILE_MONEY_RW",
                        "MOBILE_MONEY_MW",
                        "MOBILE_MONEY_ZM",
                        "MOBILE_MONEY_BW",
                        "MOBILE_MONEY_CD",
                        "MOBILE_MONEY_XOF",
                        "MOBILE_MONEY_XAF",
                        "BANK_DEPOSIT_HK",
                        "BANK_DEPOSIT_CN",
                        "GBP_BANK_TRANSFER",
                        "ACH_US",
                        "LINKED_BANK_ACCOUNT"
                      ],
                      "description": "Rail the destination funds are paid out over, echoed from the quote request."
                    },
                    "appVisualFee": {
                      "type": "number",
                      "description": "Fee to display to the end user, which can differ from `fee` where the workspace absorbs it. Present only for workspaces configured that way; prefer `fee` for reconciliation.",
                      "example": 0
                    }
                  },
                  "required": [
                    "quoteId",
                    "originCurrency",
                    "originAmount",
                    "destinationCurrency",
                    "destinationAmount",
                    "price",
                    "conversionRate",
                    "pair",
                    "fee",
                    "feeCurrency",
                    "expireAt"
                  ],
                  "description": "Response schema for creating a quote"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/quotes\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"originCurrency\": \"EUR\",\n      \"originRail\": \"BALANCE\",\n      \"destinationCurrency\": \"VES\",\n      \"destinationRail\": \"SEPA\",\n      \"locale\": \"en\",\n      \"customerId\": \"d290f1ee-6c54-4b01-90e6-d701748f0851\",\n      \"customerEmail\": \"customer@example.com\",\n      \"creatorMarkup\": 0,\n      \"originAmount\": 100\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api.virtuabroker.com/v1/quotes\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"originCurrency\": \"EUR\",\n        \"originRail\": \"BALANCE\",\n        \"destinationCurrency\": \"VES\",\n        \"destinationRail\": \"SEPA\",\n        \"locale\": \"en\",\n        \"customerId\": \"d290f1ee-6c54-4b01-90e6-d701748f0851\",\n        \"customerEmail\": \"customer@example.com\",\n        \"creatorMarkup\": 0,\n        \"originAmount\": 100\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api.virtuabroker.com/v1/quotes\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"originCurrency\": \"EUR\",\n  \"originRail\": \"BALANCE\",\n  \"destinationCurrency\": \"VES\",\n  \"destinationRail\": \"SEPA\",\n  \"locale\": \"en\",\n  \"customerId\": \"d290f1ee-6c54-4b01-90e6-d701748f0851\",\n  \"customerEmail\": \"customer@example.com\",\n  \"creatorMarkup\": 0,\n  \"originAmount\": 100\n}'"
          }
        ]
      }
    },
    "/v1/balances": {
      "get": {
        "summary": "Get user balances",
        "description": "This endpoint returns the balances for different currencies associated with a user. The user can optionally filter by a specific currency or email.",
        "tags": [
          "Balances"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "EUR",
                    "USD",
                    "GBP",
                    "BRL",
                    "MXN",
                    "ARS",
                    "COP",
                    "PEN",
                    "NGN",
                    "KES",
                    "TZS",
                    "UGX",
                    "RWF",
                    "MWK",
                    "ZMW",
                    "XOF",
                    "XAF",
                    "BWP"
                  ]
                },
                {
                  "type": "string",
                  "enum": [
                    "USDC",
                    "USDT",
                    "CUSD",
                    "BTC",
                    "ETH",
                    "POL",
                    "SOL",
                    "TRX",
                    "AVAX",
                    "XRP",
                    "BNB"
                  ]
                }
              ],
              "description": "Optional currency code to filter the balances",
              "examples": [
                "EUR"
              ]
            },
            "required": false,
            "description": "Currency code to filter the balances",
            "name": "currency",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
              "description": "Optional user email to filter the balances",
              "examples": [
                "user@virtuabroker.com",
                "john.doe@example.com",
                "alice@example.com"
              ]
            },
            "required": false,
            "description": "User email to filter the balances",
            "name": "userEmail",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A list of balances",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "balances": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "currency": {
                            "type": "string",
                            "description": "Currency code",
                            "example": "EUR"
                          },
                          "balance": {
                            "type": "number",
                            "minimum": 0,
                            "exclusiveMinimum": true,
                            "description": "Available balance for the currency",
                            "example": 100
                          },
                          "reserved": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Reserved balance for the currency",
                            "example": 100
                          },
                          "actions": {
                            "type": "object",
                            "properties": {
                              "canDeposit": {
                                "type": "boolean",
                                "description": "Whether this currency can be received/deposited"
                              },
                              "canWithdraw": {
                                "type": "boolean",
                                "description": "Whether this currency can be sent/withdrawn"
                              },
                              "canBuy": {
                                "type": "boolean",
                                "description": "Whether this currency can be bought"
                              },
                              "canSell": {
                                "type": "boolean",
                                "description": "Whether this currency can be sold"
                              }
                            },
                            "required": [
                              "canDeposit",
                              "canWithdraw",
                              "canBuy",
                              "canSell"
                            ],
                            "description": "What the workspace may do with this currency, derived from the capability registry."
                          }
                        },
                        "required": [
                          "currency",
                          "balance"
                        ],
                        "description": "Balance information for a single currency"
                      },
                      "description": "List of balances for different currencies",
                      "example": [
                        {
                          "currency": "EUR",
                          "balance": 100,
                          "reserved": 20
                        },
                        {
                          "currency": "USD",
                          "balance": 100
                        }
                      ]
                    },
                    "total": {
                      "type": "number",
                      "description": "Number of currency balances returned",
                      "example": 2
                    }
                  },
                  "required": [
                    "balances"
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/balances\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/balances\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/balances\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/deposits": {
      "post": {
        "summary": "Create a deposit",
        "description": "\nCreates a new deposit request, returning the payment instructions the end user must follow to fund their account.\n\n### How deposits work\n\n1. Call `POST /v1/deposits` with the currency, amount, and customer data.\n2. The response contains the payment instructions in `depositInfo`:\n   - **Crypto** — an on-chain `address` (and network) where the user must send funds.\n   - **Fiat** — a bank reference or IBAN the user must transfer to.\n   - **Pending** — `depositType: \"PENDING\"` means the details are still being provisioned. Poll the deposit, or wait for the webhook, until the final instructions appear.\n3. Some deposits additionally carry `extraDepositMethods` — an optional array of **other** ways to pay the same deposit (for example, a hosted card page to send the payer to). It is purely additive: `depositInfo` remains the primary way to pay, so you may ignore this field entirely if you only support bank transfer. Treat an unrecognised `methodType` as unsupported rather than as an error.\n4. Once the inbound transfer is detected on-chain or reported by the bank, the user's balance is credited automatically. A payer returning to an extra method's `callbackUrl` is **not** proof of payment — rely on the deposit status or webhooks for that.\n\n### When the payment does not match the deposit\n\nFunds are never lost or silently absorbed. A payment that cannot be credited straight away is held as a **pending payment** until it is linked to a valid deposit or order — or until operations resolves it administratively (see the note at the end of this section).\n\n- **A different amount than expected.** Small differences are treated as the expected amount. Larger ones reduce the confidence of the automatic match, and beyond a point the payment is held for a human decision rather than linked automatically. The deposit's own status does not change when this happens — it still reads `Pending`, exactly like a deposit that is simply waiting for the money to arrive. The signal is `pendingPaymentReview` on **GET /v1/deposits/{depositId}**: it is present while a payment has arrived for that deposit and is awaiting a link decision, and its `reason` says why the payment was not linked automatically (`amount_mismatch`, `name_mismatch` or `low_confidence`). It is returned by the deposit detail endpoint only — the deposit list does not carry it. A proposal is not yet a link, so the payment itself also remains listed by **GET /v1/pending-payments**. Once linked, the deposit is normally completed for the amount that actually arrived.\n\n- **A wrong or missing payment reference.** The payment cannot be matched automatically and is held as a pending payment for manual reconciliation. This can take longer than a normal deposit, because the payer's name at the bank may differ from the one on the deposit. Always give the payer `depositInfo.referenceCode` exactly as returned — it is the authoritative reference, and although it currently matches the `depositId`, do not derive it from that.\n\n- **Funds arriving after the deposit was cancelled.** The payment is **not** credited to the cancelled deposit and is **not** lost. It becomes an ordinary unlinked pending payment, listed by **GET /v1/pending-payments**, and you can resolve it yourself — link it to a valid deposit or order, or create a new one for it, using the pending-payment endpoints. It is never linked automatically to anything: pointing it at the right target is a deliberate action. The same applies to funds arriving after an **order** is cancelled.\n\nOperations can also resolve a held payment **administratively** — for example recording it as a refund to the payer, an internal liquidity movement, or a settlement executed outside the platform. An administratively resolved payment **leaves the pending-payments surface**: it is no longer returned by **GET /v1/pending-payments**, and requesting it by id responds **404**. If a pending payment you were tracking disappears without having been linked to a deposit or order, treat it as resolved by operations and contact support if you need the reconciliation detail. In every case the money remains traceable by operations; nothing is written off silently.\n",
        "tags": [
          "Deposits"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,127}$",
              "description": "Optional idempotency key: 1–128 characters of letters, digits, dash or underscore, starting with a letter or digit, sent exactly once. A present-but-malformed key is rejected with 400 before anything happens. Replaying the same key with the same payload returns the original response; reusing it with a different payload is rejected with 409. The deposit id is always server-generated and never derived from this key."
            },
            "required": false,
            "description": "Optional idempotency key: 1–128 characters of letters, digits, dash or underscore, starting with a letter or digit, sent exactly once. A present-but-malformed key is rejected with 400 before anything happens. Replaying the same key with the same payload returns the original response; reusing it with a different payload is rejected with 409. The deposit id is always server-generated and never derived from this key.",
            "name": "Idempotency-Key",
            "in": "header"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "type": "object",
                    "properties": {
                      "externalReference": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "description": "Your own reference for this deposit. Stored as-is and returned on create, detail and list, so you can look the deposit up by it after a network timeout instead of retrying blind. Not interpreted by VirtuaBroker and not shown to the payer — for the payer's transfer reference use depositInfo.referenceCode.",
                        "examples": [
                          "partner-ref-0001",
                          "inv_2026_00417"
                        ]
                      },
                      "userData": {
                        "oneOf": [
                          {
                            "type": "object",
                            "properties": {
                              "userType": {
                                "type": "string",
                                "enum": [
                                  "individual"
                                ]
                              },
                              "firstName": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 50,
                                "description": "First name of the user making the deposit (or representative for business)",
                                "examples": [
                                  "John",
                                  "Alice",
                                  "Bob"
                                ]
                              },
                              "lastName": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "Last name of the user making the deposit (or representative for business)",
                                "examples": [
                                  "Doe",
                                  "Smith",
                                  "Johnson"
                                ]
                              },
                              "userEmail": {
                                "type": "string",
                                "maxLength": 254,
                                "format": "email",
                                "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                "description": "Email of the user making the deposit",
                                "examples": [
                                  "user@virtuabroker.com",
                                  "john.doe@example.com",
                                  "alice@example.com"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "maxLength": 150,
                                "description": "Address of the user making the deposit",
                                "examples": [
                                  "123 Main St, Anytown, ES",
                                  "456 Elm St, Anytown, ES",
                                  "789 Oak St, Anytown, ES"
                                ]
                              },
                              "taxDocumentType": {
                                "type": "string",
                                "maxLength": 50,
                                "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                "examples": [
                                  "CC",
                                  "NIT",
                                  "CE",
                                  "NIF",
                                  "Other"
                                ]
                              },
                              "taxId": {
                                "type": "string",
                                "maxLength": 30,
                                "description": "Tax ID of the user making the deposit",
                                "examples": [
                                  "123-45-6789",
                                  "987-65-4321",
                                  "111-22-3333"
                                ]
                              },
                              "country": {
                                "type": "string",
                                "enum": [
                                  "US",
                                  "CA",
                                  "GB",
                                  "DE",
                                  "FR",
                                  "AU",
                                  "JP",
                                  "KR",
                                  "SE",
                                  "NO",
                                  "DK",
                                  "FI",
                                  "NL",
                                  "BE",
                                  "CH",
                                  "AT",
                                  "NZ",
                                  "SG",
                                  "IE",
                                  "LU",
                                  "PT",
                                  "ES",
                                  "IT",
                                  "GR",
                                  "CZ",
                                  "PL",
                                  "HU",
                                  "SK",
                                  "SI",
                                  "EE",
                                  "LT",
                                  "LV",
                                  "IS",
                                  "MT",
                                  "CY",
                                  "HR",
                                  "RO",
                                  "BG",
                                  "BR",
                                  "AR",
                                  "CL",
                                  "MX",
                                  "CO",
                                  "PE",
                                  "PA",
                                  "UY",
                                  "BO",
                                  "ZA",
                                  "NG",
                                  "KE",
                                  "GH",
                                  "TZ",
                                  "UG",
                                  "RW",
                                  "MW",
                                  "ZM",
                                  "BW",
                                  "CD",
                                  "CI",
                                  "CM",
                                  "IL",
                                  "AE",
                                  "QA",
                                  "SA",
                                  "OM",
                                  "KW",
                                  "BH",
                                  "MY",
                                  "PH",
                                  "TH",
                                  "VN",
                                  "ID",
                                  "IN",
                                  "LK",
                                  "NP",
                                  "BD",
                                  "PK",
                                  "EG",
                                  "MA",
                                  "DZ",
                                  "TN",
                                  "JO",
                                  "LB",
                                  "TR",
                                  "KH",
                                  "MM",
                                  "LA",
                                  "EN",
                                  "BT",
                                  "VE",
                                  "TW",
                                  "HK",
                                  "CN"
                                ],
                                "description": "Country code of the user making the deposit",
                                "examples": [
                                  "ES",
                                  "US",
                                  "GB"
                                ]
                              },
                              "state": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "State of the user making the deposit",
                                "examples": [
                                  "Madrid",
                                  "New York",
                                  "London"
                                ]
                              },
                              "postalCode": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 30,
                                "description": "Postal code of the user making the deposit",
                                "examples": [
                                  "12345",
                                  "67890",
                                  "abcde"
                                ]
                              },
                              "city": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "City of the user making the deposit",
                                "examples": [
                                  "Madrid",
                                  "New York",
                                  "London"
                                ]
                              },
                              "dob": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 30,
                                "description": "Date of birth of the user making the deposit",
                                "examples": [
                                  "1990-01-01",
                                  "1995-05-15",
                                  "1988-12-31"
                                ]
                              },
                              "phoneNumber": {
                                "type": "string",
                                "maxLength": 30,
                                "description": "Phone number of the user making the deposit",
                                "examples": [
                                  "+447700900123",
                                  "+447700900456",
                                  "+447700900789"
                                ]
                              },
                              "kycId": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 300,
                                "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                "examples": [
                                  "kyc-12345",
                                  "kyc-67890",
                                  "kyc-abcde"
                                ]
                              },
                              "activity": {
                                "type": "string",
                                "description": "Activity of the user making the deposit",
                                "examples": [
                                  "worker",
                                  "business",
                                  "student"
                                ]
                              }
                            },
                            "required": [
                              "userType",
                              "firstName",
                              "userEmail",
                              "country"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "userType": {
                                "type": "string",
                                "enum": [
                                  "business"
                                ]
                              },
                              "businessName": {
                                "type": "string",
                                "maxLength": 150,
                                "description": "Business name (required when userType is business)",
                                "examples": [
                                  "Acme Corp",
                                  "Tech Solutions Inc",
                                  "Global Services Ltd"
                                ]
                              },
                              "firstName": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 50,
                                "description": "First name of the user making the deposit (or representative for business)",
                                "examples": [
                                  "John",
                                  "Alice",
                                  "Bob"
                                ]
                              },
                              "userEmail": {
                                "type": "string",
                                "maxLength": 254,
                                "format": "email",
                                "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                "description": "Email of the user making the deposit",
                                "examples": [
                                  "user@virtuabroker.com",
                                  "john.doe@example.com",
                                  "alice@example.com"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "maxLength": 150,
                                "description": "Address of the user making the deposit",
                                "examples": [
                                  "123 Main St, Anytown, ES",
                                  "456 Elm St, Anytown, ES",
                                  "789 Oak St, Anytown, ES"
                                ]
                              },
                              "taxDocumentType": {
                                "type": "string",
                                "maxLength": 50,
                                "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                "examples": [
                                  "CC",
                                  "NIT",
                                  "CE",
                                  "NIF",
                                  "Other"
                                ]
                              },
                              "taxId": {
                                "type": "string",
                                "maxLength": 30,
                                "description": "Tax ID of the user making the deposit",
                                "examples": [
                                  "123-45-6789",
                                  "987-65-4321",
                                  "111-22-3333"
                                ]
                              },
                              "country": {
                                "type": "string",
                                "enum": [
                                  "US",
                                  "CA",
                                  "GB",
                                  "DE",
                                  "FR",
                                  "AU",
                                  "JP",
                                  "KR",
                                  "SE",
                                  "NO",
                                  "DK",
                                  "FI",
                                  "NL",
                                  "BE",
                                  "CH",
                                  "AT",
                                  "NZ",
                                  "SG",
                                  "IE",
                                  "LU",
                                  "PT",
                                  "ES",
                                  "IT",
                                  "GR",
                                  "CZ",
                                  "PL",
                                  "HU",
                                  "SK",
                                  "SI",
                                  "EE",
                                  "LT",
                                  "LV",
                                  "IS",
                                  "MT",
                                  "CY",
                                  "HR",
                                  "RO",
                                  "BG",
                                  "BR",
                                  "AR",
                                  "CL",
                                  "MX",
                                  "CO",
                                  "PE",
                                  "PA",
                                  "UY",
                                  "BO",
                                  "ZA",
                                  "NG",
                                  "KE",
                                  "GH",
                                  "TZ",
                                  "UG",
                                  "RW",
                                  "MW",
                                  "ZM",
                                  "BW",
                                  "CD",
                                  "CI",
                                  "CM",
                                  "IL",
                                  "AE",
                                  "QA",
                                  "SA",
                                  "OM",
                                  "KW",
                                  "BH",
                                  "MY",
                                  "PH",
                                  "TH",
                                  "VN",
                                  "ID",
                                  "IN",
                                  "LK",
                                  "NP",
                                  "BD",
                                  "PK",
                                  "EG",
                                  "MA",
                                  "DZ",
                                  "TN",
                                  "JO",
                                  "LB",
                                  "TR",
                                  "KH",
                                  "MM",
                                  "LA",
                                  "EN",
                                  "BT",
                                  "VE",
                                  "TW",
                                  "HK",
                                  "CN"
                                ],
                                "description": "Country code of the user making the deposit",
                                "examples": [
                                  "ES",
                                  "US",
                                  "GB"
                                ]
                              },
                              "state": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "State of the user making the deposit",
                                "examples": [
                                  "Madrid",
                                  "New York",
                                  "London"
                                ]
                              },
                              "postalCode": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 30,
                                "description": "Postal code of the user making the deposit",
                                "examples": [
                                  "12345",
                                  "67890",
                                  "abcde"
                                ]
                              },
                              "city": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "City of the user making the deposit",
                                "examples": [
                                  "Madrid",
                                  "New York",
                                  "London"
                                ]
                              },
                              "dob": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 30,
                                "description": "Date of birth of the user making the deposit",
                                "examples": [
                                  "1990-01-01",
                                  "1995-05-15",
                                  "1988-12-31"
                                ]
                              },
                              "phoneNumber": {
                                "type": "string",
                                "maxLength": 30,
                                "description": "Phone number of the user making the deposit",
                                "examples": [
                                  "+447700900123",
                                  "+447700900456",
                                  "+447700900789"
                                ]
                              },
                              "kycId": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 300,
                                "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                "examples": [
                                  "kyc-12345",
                                  "kyc-67890",
                                  "kyc-abcde"
                                ]
                              },
                              "activity": {
                                "type": "string",
                                "description": "Activity of the user making the deposit",
                                "examples": [
                                  "worker",
                                  "business",
                                  "student"
                                ]
                              }
                            },
                            "required": [
                              "userType",
                              "businessName",
                              "firstName",
                              "userEmail",
                              "country"
                            ]
                          }
                        ],
                        "description": "User data of the person/company making the deposit"
                      },
                      "userDataId": {
                        "type": "string",
                        "description": "Account ID of the person/company making the deposit",
                        "examples": [
                          "d290f1ee-6c54-4b01-90e6-d701748f0851"
                        ]
                      },
                      "originCountry": {
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 2,
                        "description": "Collection country (ISO-3166 alpha-2) for a multi-country payin currency (CFA zones). Must be a valid collection country for the currency; omitted ⇒ the default collection country is used.",
                        "examples": [
                          "CI",
                          "SN",
                          "CM"
                        ]
                      },
                      "originNetworkId": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "description": "Collection network the payer will pay from, for a mobile-money payin corridor. Must be one of the ids returned by GET /v1/currencies/{currency}/networks?rail={rail}&rampType=deposit — passing the same rail, and the same country where the currency is collected across several — not free text. Required only where the corridor offers more than one network; a single-network corridor resolves it automatically and needs no value.",
                        "examples": [
                          "3f9a1c7e-2b4d-4e8a-9c1f-0a1b2c3d4e5f"
                        ]
                      }
                    }
                  },
                  {
                    "anyOf": [
                      {
                        "type": "object",
                        "properties": {
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "exclusiveMinimum": true,
                            "description": "Amount to be deposited",
                            "examples": [
                              100,
                              1000,
                              5000,
                              10000
                            ]
                          },
                          "currency": {
                            "type": "string",
                            "enum": [
                              "USDC",
                              "USDT",
                              "CUSD",
                              "BTC",
                              "ETH",
                              "POL",
                              "SOL",
                              "TRX",
                              "AVAX",
                              "XRP",
                              "BNB"
                            ],
                            "description": "Currency of the deposit",
                            "examples": [
                              "USDC",
                              "CUSD",
                              "ETH"
                            ]
                          },
                          "rail": {
                            "anyOf": [
                              {
                                "type": "string",
                                "enum": [
                                  "BTC",
                                  "ETH",
                                  "MATIC",
                                  "CELO",
                                  "SOLANA",
                                  "TRON",
                                  "BSC",
                                  "XRP",
                                  "ARBITRUM",
                                  "OPTIMISM",
                                  "AVALANCHE",
                                  "BASE",
                                  "CARDANO"
                                ]
                              },
                              {
                                "type": "string",
                                "enum": [
                                  "BALANCE"
                                ]
                              }
                            ]
                          }
                        },
                        "required": [
                          "amount",
                          "currency",
                          "rail"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "exclusiveMinimum": true,
                            "description": "Amount to be deposited",
                            "examples": [
                              100,
                              1000,
                              5000,
                              10000
                            ]
                          },
                          "currency": {
                            "type": "string",
                            "enum": [
                              "EUR",
                              "USD",
                              "GBP",
                              "BRL",
                              "MXN",
                              "ARS",
                              "COP",
                              "PEN",
                              "NGN",
                              "KES",
                              "TZS",
                              "UGX",
                              "RWF",
                              "MWK",
                              "ZMW",
                              "XOF",
                              "XAF",
                              "BWP"
                            ],
                            "description": "Currency of the deposit",
                            "examples": [
                              "EUR",
                              "BRL"
                            ]
                          },
                          "rail": {
                            "type": "string",
                            "enum": [
                              "BALANCE",
                              "SEPA",
                              "BTC",
                              "ETH",
                              "MATIC",
                              "POLYGON",
                              "CELO",
                              "TRON",
                              "SOLANA",
                              "ARBITRUM",
                              "OPTIMISM",
                              "AVALANCHE",
                              "BSC",
                              "BASE",
                              "XRP",
                              "PIX_BR",
                              "UPI",
                              "IMPS",
                              "TRY_BANK_TRANSFER",
                              "AED_BANK_TRANSFER",
                              "SPEI",
                              "IDR_BANK_TRANSFER",
                              "CREDIT_CARD",
                              "THAI_QR",
                              "VIET_QR",
                              "GCASH",
                              "ARGENTINA_BANK_TRANSFER",
                              "PSE",
                              "CLABE",
                              "PIX",
                              "BANK_DEPOSIT_COL",
                              "BANK_DEPOSIT_AR",
                              "BANK_DEPOSIT_CL",
                              "BANK_DEPOSIT_PE",
                              "BANK_DEPOSIT_BO",
                              "BANK_DEPOSIT_BR",
                              "BANK_DEPOSIT_NG",
                              "BANK_DEPOSIT_KE",
                              "BANK_DEPOSIT_GH",
                              "BANK_DEPOSIT_ZA",
                              "BANK_DEPOSIT_TZ",
                              "BANK_DEPOSIT_UG",
                              "BANK_DEPOSIT_RW",
                              "BANK_DEPOSIT_MW",
                              "BANK_DEPOSIT_ZM",
                              "BANK_DEPOSIT_BW",
                              "BANK_DEPOSIT_CD",
                              "BANK_DEPOSIT_XOF",
                              "BANK_DEPOSIT_XAF",
                              "MOBILE_MONEY_NG",
                              "MOBILE_MONEY_KE",
                              "MOBILE_MONEY_GH",
                              "MOBILE_MONEY_ZA",
                              "MOBILE_MONEY_TZ",
                              "MOBILE_MONEY_UG",
                              "MOBILE_MONEY_RW",
                              "MOBILE_MONEY_MW",
                              "MOBILE_MONEY_ZM",
                              "MOBILE_MONEY_BW",
                              "MOBILE_MONEY_CD",
                              "MOBILE_MONEY_XOF",
                              "MOBILE_MONEY_XAF",
                              "ACH_US",
                              "GBP_BANK_TRANSFER"
                            ],
                            "description": "Rail for the deposit for fiat deposits",
                            "examples": [
                              "SEPA",
                              "MATIC"
                            ]
                          }
                        },
                        "required": [
                          "currency"
                        ]
                      }
                    ]
                  }
                ],
                "description": "Request schema for creating a deposit. Must provide either userData or userDataId."
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful deposit creation",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "depositId": {
                      "type": "string",
                      "minLength": 1,
                      "description": "ID of the deposit. Normally a 12-character internal id; deposits created before mid-2026 may carry a longer legacy id. Treat it as an opaque string."
                    },
                    "externalReference": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 128,
                      "description": "Your own reference for this deposit. Stored as-is and returned on create, detail and list, so you can look the deposit up by it after a network timeout instead of retrying blind. Not interpreted by VirtuaBroker and not shown to the payer — for the payer's transfer reference use depositInfo.referenceCode.",
                      "examples": [
                        "partner-ref-0001",
                        "inv_2026_00417"
                      ]
                    },
                    "userData": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "userType": {
                              "type": "string",
                              "enum": [
                                "individual"
                              ]
                            },
                            "firstName": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 50,
                              "description": "First name of the user making the deposit (or representative for business)",
                              "examples": [
                                "John",
                                "Alice",
                                "Bob"
                              ]
                            },
                            "lastName": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 100,
                              "description": "Last name of the user making the deposit (or representative for business)",
                              "examples": [
                                "Doe",
                                "Smith",
                                "Johnson"
                              ]
                            },
                            "userEmail": {
                              "type": "string",
                              "maxLength": 254,
                              "format": "email",
                              "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                              "description": "Email of the user making the deposit",
                              "examples": [
                                "user@virtuabroker.com",
                                "john.doe@example.com",
                                "alice@example.com"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "maxLength": 150,
                              "description": "Address of the user making the deposit",
                              "examples": [
                                "123 Main St, Anytown, ES",
                                "456 Elm St, Anytown, ES",
                                "789 Oak St, Anytown, ES"
                              ]
                            },
                            "taxDocumentType": {
                              "type": "string",
                              "maxLength": 50,
                              "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                              "examples": [
                                "CC",
                                "NIT",
                                "CE",
                                "NIF",
                                "Other"
                              ]
                            },
                            "taxId": {
                              "type": "string",
                              "maxLength": 30,
                              "description": "Tax ID of the user making the deposit",
                              "examples": [
                                "123-45-6789",
                                "987-65-4321",
                                "111-22-3333"
                              ]
                            },
                            "country": {
                              "type": "string",
                              "enum": [
                                "US",
                                "CA",
                                "GB",
                                "DE",
                                "FR",
                                "AU",
                                "JP",
                                "KR",
                                "SE",
                                "NO",
                                "DK",
                                "FI",
                                "NL",
                                "BE",
                                "CH",
                                "AT",
                                "NZ",
                                "SG",
                                "IE",
                                "LU",
                                "PT",
                                "ES",
                                "IT",
                                "GR",
                                "CZ",
                                "PL",
                                "HU",
                                "SK",
                                "SI",
                                "EE",
                                "LT",
                                "LV",
                                "IS",
                                "MT",
                                "CY",
                                "HR",
                                "RO",
                                "BG",
                                "BR",
                                "AR",
                                "CL",
                                "MX",
                                "CO",
                                "PE",
                                "PA",
                                "UY",
                                "BO",
                                "ZA",
                                "NG",
                                "KE",
                                "GH",
                                "TZ",
                                "UG",
                                "RW",
                                "MW",
                                "ZM",
                                "BW",
                                "CD",
                                "CI",
                                "CM",
                                "IL",
                                "AE",
                                "QA",
                                "SA",
                                "OM",
                                "KW",
                                "BH",
                                "MY",
                                "PH",
                                "TH",
                                "VN",
                                "ID",
                                "IN",
                                "LK",
                                "NP",
                                "BD",
                                "PK",
                                "EG",
                                "MA",
                                "DZ",
                                "TN",
                                "JO",
                                "LB",
                                "TR",
                                "KH",
                                "MM",
                                "LA",
                                "EN",
                                "BT",
                                "VE",
                                "TW",
                                "HK",
                                "CN"
                              ],
                              "description": "Country code of the user making the deposit",
                              "examples": [
                                "ES",
                                "US",
                                "GB"
                              ]
                            },
                            "state": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 100,
                              "description": "State of the user making the deposit",
                              "examples": [
                                "Madrid",
                                "New York",
                                "London"
                              ]
                            },
                            "postalCode": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 30,
                              "description": "Postal code of the user making the deposit",
                              "examples": [
                                "12345",
                                "67890",
                                "abcde"
                              ]
                            },
                            "city": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 100,
                              "description": "City of the user making the deposit",
                              "examples": [
                                "Madrid",
                                "New York",
                                "London"
                              ]
                            },
                            "dob": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 30,
                              "description": "Date of birth of the user making the deposit",
                              "examples": [
                                "1990-01-01",
                                "1995-05-15",
                                "1988-12-31"
                              ]
                            },
                            "phoneNumber": {
                              "type": "string",
                              "maxLength": 30,
                              "description": "Phone number of the user making the deposit",
                              "examples": [
                                "+447700900123",
                                "+447700900456",
                                "+447700900789"
                              ]
                            },
                            "kycId": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 300,
                              "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                              "examples": [
                                "kyc-12345",
                                "kyc-67890",
                                "kyc-abcde"
                              ]
                            },
                            "activity": {
                              "type": "string",
                              "description": "Activity of the user making the deposit",
                              "examples": [
                                "worker",
                                "business",
                                "student"
                              ]
                            }
                          },
                          "required": [
                            "userType",
                            "firstName",
                            "userEmail",
                            "country"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "userType": {
                              "type": "string",
                              "enum": [
                                "business"
                              ]
                            },
                            "businessName": {
                              "type": "string",
                              "maxLength": 150,
                              "description": "Business name (required when userType is business)",
                              "examples": [
                                "Acme Corp",
                                "Tech Solutions Inc",
                                "Global Services Ltd"
                              ]
                            },
                            "firstName": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 50,
                              "description": "First name of the user making the deposit (or representative for business)",
                              "examples": [
                                "John",
                                "Alice",
                                "Bob"
                              ]
                            },
                            "userEmail": {
                              "type": "string",
                              "maxLength": 254,
                              "format": "email",
                              "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                              "description": "Email of the user making the deposit",
                              "examples": [
                                "user@virtuabroker.com",
                                "john.doe@example.com",
                                "alice@example.com"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "maxLength": 150,
                              "description": "Address of the user making the deposit",
                              "examples": [
                                "123 Main St, Anytown, ES",
                                "456 Elm St, Anytown, ES",
                                "789 Oak St, Anytown, ES"
                              ]
                            },
                            "taxDocumentType": {
                              "type": "string",
                              "maxLength": 50,
                              "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                              "examples": [
                                "CC",
                                "NIT",
                                "CE",
                                "NIF",
                                "Other"
                              ]
                            },
                            "taxId": {
                              "type": "string",
                              "maxLength": 30,
                              "description": "Tax ID of the user making the deposit",
                              "examples": [
                                "123-45-6789",
                                "987-65-4321",
                                "111-22-3333"
                              ]
                            },
                            "country": {
                              "type": "string",
                              "enum": [
                                "US",
                                "CA",
                                "GB",
                                "DE",
                                "FR",
                                "AU",
                                "JP",
                                "KR",
                                "SE",
                                "NO",
                                "DK",
                                "FI",
                                "NL",
                                "BE",
                                "CH",
                                "AT",
                                "NZ",
                                "SG",
                                "IE",
                                "LU",
                                "PT",
                                "ES",
                                "IT",
                                "GR",
                                "CZ",
                                "PL",
                                "HU",
                                "SK",
                                "SI",
                                "EE",
                                "LT",
                                "LV",
                                "IS",
                                "MT",
                                "CY",
                                "HR",
                                "RO",
                                "BG",
                                "BR",
                                "AR",
                                "CL",
                                "MX",
                                "CO",
                                "PE",
                                "PA",
                                "UY",
                                "BO",
                                "ZA",
                                "NG",
                                "KE",
                                "GH",
                                "TZ",
                                "UG",
                                "RW",
                                "MW",
                                "ZM",
                                "BW",
                                "CD",
                                "CI",
                                "CM",
                                "IL",
                                "AE",
                                "QA",
                                "SA",
                                "OM",
                                "KW",
                                "BH",
                                "MY",
                                "PH",
                                "TH",
                                "VN",
                                "ID",
                                "IN",
                                "LK",
                                "NP",
                                "BD",
                                "PK",
                                "EG",
                                "MA",
                                "DZ",
                                "TN",
                                "JO",
                                "LB",
                                "TR",
                                "KH",
                                "MM",
                                "LA",
                                "EN",
                                "BT",
                                "VE",
                                "TW",
                                "HK",
                                "CN"
                              ],
                              "description": "Country code of the user making the deposit",
                              "examples": [
                                "ES",
                                "US",
                                "GB"
                              ]
                            },
                            "state": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 100,
                              "description": "State of the user making the deposit",
                              "examples": [
                                "Madrid",
                                "New York",
                                "London"
                              ]
                            },
                            "postalCode": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 30,
                              "description": "Postal code of the user making the deposit",
                              "examples": [
                                "12345",
                                "67890",
                                "abcde"
                              ]
                            },
                            "city": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 100,
                              "description": "City of the user making the deposit",
                              "examples": [
                                "Madrid",
                                "New York",
                                "London"
                              ]
                            },
                            "dob": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 30,
                              "description": "Date of birth of the user making the deposit",
                              "examples": [
                                "1990-01-01",
                                "1995-05-15",
                                "1988-12-31"
                              ]
                            },
                            "phoneNumber": {
                              "type": "string",
                              "maxLength": 30,
                              "description": "Phone number of the user making the deposit",
                              "examples": [
                                "+447700900123",
                                "+447700900456",
                                "+447700900789"
                              ]
                            },
                            "kycId": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 300,
                              "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                              "examples": [
                                "kyc-12345",
                                "kyc-67890",
                                "kyc-abcde"
                              ]
                            },
                            "activity": {
                              "type": "string",
                              "description": "Activity of the user making the deposit",
                              "examples": [
                                "worker",
                                "business",
                                "student"
                              ]
                            }
                          },
                          "required": [
                            "userType",
                            "businessName",
                            "firstName",
                            "userEmail",
                            "country"
                          ]
                        }
                      ],
                      "description": "User data of the person/company making the deposit",
                      "examples": [
                        {
                          "userType": "individual",
                          "firstName": "John",
                          "lastName": "Doe",
                          "userEmail": "user@virtuabroker.com",
                          "address": "123 Main St, Anytown, ES",
                          "taxId": "123-45-6789",
                          "country": "ES"
                        },
                        {
                          "userType": "individual",
                          "firstName": "Alice",
                          "lastName": "Smith",
                          "userEmail": "alice@example.com",
                          "address": "456 Elm St, Anytown, ES",
                          "taxId": "987-65-4321",
                          "country": "ES"
                        }
                      ]
                    },
                    "createdAt": {
                      "type": "number",
                      "description": "Creation time of the deposit",
                      "examples": [
                        1723027132,
                        1723027133,
                        1723027134
                      ]
                    },
                    "rail": {
                      "type": "string",
                      "enum": [
                        "BALANCE",
                        "SEPA",
                        "BTC",
                        "ETH",
                        "MATIC",
                        "POLYGON",
                        "CELO",
                        "TRON",
                        "SOLANA",
                        "ARBITRUM",
                        "OPTIMISM",
                        "AVALANCHE",
                        "BSC",
                        "BASE",
                        "XRP",
                        "PIX_BR",
                        "UPI",
                        "IMPS",
                        "TRY_BANK_TRANSFER",
                        "AED_BANK_TRANSFER",
                        "SPEI",
                        "IDR_BANK_TRANSFER",
                        "CREDIT_CARD",
                        "THAI_QR",
                        "VIET_QR",
                        "GCASH",
                        "ARGENTINA_BANK_TRANSFER",
                        "PSE",
                        "CLABE",
                        "PIX",
                        "BANK_DEPOSIT_COL",
                        "BANK_DEPOSIT_AR",
                        "BANK_DEPOSIT_CL",
                        "BANK_DEPOSIT_PE",
                        "BANK_DEPOSIT_BO",
                        "BANK_DEPOSIT_BR",
                        "BANK_DEPOSIT_NG",
                        "BANK_DEPOSIT_KE",
                        "BANK_DEPOSIT_GH",
                        "BANK_DEPOSIT_ZA",
                        "BANK_DEPOSIT_TZ",
                        "BANK_DEPOSIT_UG",
                        "BANK_DEPOSIT_RW",
                        "BANK_DEPOSIT_MW",
                        "BANK_DEPOSIT_ZM",
                        "BANK_DEPOSIT_BW",
                        "BANK_DEPOSIT_CD",
                        "BANK_DEPOSIT_XOF",
                        "BANK_DEPOSIT_XAF",
                        "MOBILE_MONEY_NG",
                        "MOBILE_MONEY_KE",
                        "MOBILE_MONEY_GH",
                        "MOBILE_MONEY_ZA",
                        "MOBILE_MONEY_TZ",
                        "MOBILE_MONEY_UG",
                        "MOBILE_MONEY_RW",
                        "MOBILE_MONEY_MW",
                        "MOBILE_MONEY_ZM",
                        "MOBILE_MONEY_BW",
                        "MOBILE_MONEY_CD",
                        "MOBILE_MONEY_XOF",
                        "MOBILE_MONEY_XAF",
                        "ACH_US",
                        "GBP_BANK_TRANSFER"
                      ],
                      "description": "Rail of the deposit"
                    },
                    "receivedAt": {
                      "type": "number",
                      "description": "Unix ms timestamp of when the funds for this deposit ARRIVED — recorded when the incoming payment is matched to the deposit, which is before it is credited. Present whenever funds have arrived, including a deposit whose funds are still held in review; omitted entirely when no funds ever arrived, so a never-funded or cancelled deposit has no value here and its presence is a reliable settlement signal for reconciliation. Identical on GET /v1/deposits and GET /v1/deposits/{depositId}. Note that the deposit object embedded in order and operation responses does not yet apply this rule — it returns the stored value. Not the creation time — use createdAt for that.",
                      "examples": [
                        1723027132000,
                        1723027133000,
                        1723027134000
                      ]
                    },
                    "expectedAmount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Amount expected of the deposit",
                      "examples": [
                        1000,
                        2000,
                        3000
                      ]
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Amount received of the deposit",
                      "examples": [
                        1000,
                        2000,
                        3000
                      ]
                    },
                    "currency": {
                      "anyOf": [
                        {
                          "type": "string",
                          "enum": [
                            "EUR",
                            "USD",
                            "GBP",
                            "BRL",
                            "MXN",
                            "ARS",
                            "COP",
                            "PEN",
                            "NGN",
                            "KES",
                            "TZS",
                            "UGX",
                            "RWF",
                            "MWK",
                            "ZMW",
                            "XOF",
                            "XAF",
                            "BWP"
                          ]
                        },
                        {
                          "type": "string",
                          "enum": [
                            "USDC",
                            "USDT",
                            "CUSD",
                            "BTC",
                            "ETH",
                            "POL",
                            "SOL",
                            "TRX",
                            "AVAX",
                            "XRP",
                            "BNB"
                          ]
                        }
                      ],
                      "description": "Currency of the deposit",
                      "examples": [
                        "EUR",
                        "BRL"
                      ]
                    },
                    "fee": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Fee for the deposit. This value is written once the deposit has been executed. Meanwhile it will appear 0.",
                      "example": 10
                    },
                    "expectedFee": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Fee for the deposit. This value is correlated with the expected amount for the deposit.",
                      "examples": [
                        10,
                        20,
                        30
                      ]
                    },
                    "feeCurrency": {
                      "anyOf": [
                        {
                          "type": "string",
                          "enum": [
                            "EUR",
                            "USD",
                            "GBP",
                            "BRL",
                            "MXN",
                            "ARS",
                            "COP",
                            "PEN",
                            "NGN",
                            "KES",
                            "TZS",
                            "UGX",
                            "RWF",
                            "MWK",
                            "ZMW",
                            "XOF",
                            "XAF",
                            "BWP"
                          ]
                        },
                        {
                          "type": "string",
                          "enum": [
                            "USDC",
                            "USDT",
                            "CUSD",
                            "BTC",
                            "ETH",
                            "POL",
                            "SOL",
                            "TRX",
                            "AVAX",
                            "XRP",
                            "BNB"
                          ]
                        }
                      ],
                      "description": "Currency of the fee",
                      "examples": [
                        "EUR",
                        "BRL"
                      ]
                    },
                    "status": {
                      "anyOf": [
                        {
                          "type": "string",
                          "enum": [
                            "Pending",
                            "Processing",
                            "Success",
                            "Failed",
                            "Canceled",
                            "Reviewing"
                          ],
                          "description": "Common status values that are shared across all operation types",
                          "examples": [
                            "Pending",
                            "Processing",
                            "Success",
                            "Failed",
                            "Canceled",
                            "Reviewing"
                          ]
                        },
                        {
                          "type": "string",
                          "enum": [
                            "PendingCancel",
                            "Received"
                          ]
                        }
                      ],
                      "description": "Status of the deposit",
                      "examples": [
                        "Pending",
                        "Success",
                        "Failed",
                        "Received",
                        "PendingCancel"
                      ]
                    },
                    "depositInfo": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "accountHolder": {
                              "type": "string",
                              "description": "Name of the account holder",
                              "example": "John Doe"
                            },
                            "iban": {
                              "type": "string",
                              "description": "SEPA Bank Account Number",
                              "example": "DE8937XXXXXXXXXXXX3000"
                            },
                            "bic": {
                              "type": "string",
                              "description": "Bank BIC/SWIFT code",
                              "example": "DEUTDEFF"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Name of the bank",
                              "example": "Deutsche Bank"
                            },
                            "bankAddress": {
                              "type": "string",
                              "description": "Address of the bank",
                              "example": "Taunusanlage 12"
                            },
                            "bankCity": {
                              "type": "string",
                              "description": "City of the bank",
                              "example": "Frankfurt am Main"
                            },
                            "bankZipcode": {
                              "type": "string",
                              "description": "Zipcode of the bank",
                              "example": "60325"
                            },
                            "bankCountry": {
                              "type": "string",
                              "enum": [
                                "US",
                                "CA",
                                "GB",
                                "DE",
                                "FR",
                                "AU",
                                "JP",
                                "KR",
                                "SE",
                                "NO",
                                "DK",
                                "FI",
                                "NL",
                                "BE",
                                "CH",
                                "AT",
                                "NZ",
                                "SG",
                                "IE",
                                "LU",
                                "PT",
                                "ES",
                                "IT",
                                "GR",
                                "CZ",
                                "PL",
                                "HU",
                                "SK",
                                "SI",
                                "EE",
                                "LT",
                                "LV",
                                "IS",
                                "MT",
                                "CY",
                                "HR",
                                "RO",
                                "BG",
                                "BR",
                                "AR",
                                "CL",
                                "MX",
                                "CO",
                                "PE",
                                "PA",
                                "UY",
                                "BO",
                                "ZA",
                                "NG",
                                "KE",
                                "GH",
                                "TZ",
                                "UG",
                                "RW",
                                "MW",
                                "ZM",
                                "BW",
                                "CD",
                                "CI",
                                "CM",
                                "IL",
                                "AE",
                                "QA",
                                "SA",
                                "OM",
                                "KW",
                                "BH",
                                "MY",
                                "PH",
                                "TH",
                                "VN",
                                "ID",
                                "IN",
                                "LK",
                                "NP",
                                "BD",
                                "PK",
                                "EG",
                                "MA",
                                "DZ",
                                "TN",
                                "JO",
                                "LB",
                                "TR",
                                "KH",
                                "MM",
                                "LA",
                                "EN",
                                "BT",
                                "VE",
                                "TW",
                                "HK",
                                "CN"
                              ],
                              "description": "Country of the bank",
                              "example": "DE"
                            },
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "SEPA"
                              ]
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount. It can be 0 for open-amount bank transfers where the sender chooses the final amount from their bank.",
                              "example": 1000
                            },
                            "referenceCode": {
                              "type": "string",
                              "minLength": 1,
                              "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order. The user must include this code when making the deposit to ensure accurate processing. In cases where the reference code is incorrect or missing, we manually match orders based on the sender's name and other available details. In case the deposit is not matched, we will mark the order as Reviewing and the system will require manual attention.",
                              "example": "REF123456"
                            },
                            "extraDepositMethods": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "methodType": {
                                    "type": "string",
                                    "enum": [
                                      "HOSTED_CHECKOUT"
                                    ],
                                    "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                                  },
                                  "url": {
                                    "type": "string",
                                    "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                                    "example": "https://checkout.example.com/pay/abc123"
                                  },
                                  "callbackUrl": {
                                    "type": "string",
                                    "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Payment reference for this method (equals the deposit/order reference)"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                                  },
                                  "currency": {
                                    "type": "string",
                                    "description": "Currency of this method"
                                  },
                                  "expiresAt": {
                                    "type": "number",
                                    "description": "Unix ms after which `url` is no longer valid, when known"
                                  }
                                },
                                "required": [
                                  "methodType",
                                  "url"
                                ],
                                "description": "An additional, optional way to pay this deposit"
                              },
                              "description": "Additional, optional ways to pay this same deposit (e.g. a hosted card page). The bank details above remain the primary method; ignore this field if you only support bank transfer."
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ],
                          "description": "Detailed information about a bank deposit, including the amount and a unique reference code for identification."
                        },
                        {
                          "type": "object",
                          "properties": {
                            "address": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Crypto wallet address",
                              "example": "0x1A2b3C4d5E6f7890AbCdEf1234567890AbCdEf12"
                            },
                            "network": {
                              "type": "string",
                              "enum": [
                                "MATIC",
                                "ETH",
                                "CELO",
                                "TRON",
                                "BTC",
                                "SOLANA",
                                "XRP",
                                "CARDANO",
                                "BSC",
                                "ARBITRUM",
                                "OPTIMISM",
                                "AVALANCHE",
                                "BASE"
                              ],
                              "description": "Network for the deposit for crypto deposits",
                              "examples": [
                                "ETH",
                                "MATIC",
                                "CELO"
                              ]
                            },
                            "memo": {
                              "type": "string",
                              "description": "Optional memo for the transaction",
                              "example": "Payment for services"
                            },
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "CRYPTO"
                              ]
                            },
                            "qrCode": {
                              "type": "string",
                              "description": "Base64-encoded QR image for the deposit address",
                              "example": "iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAIAAADTED8xAAABpklEQVR42u3BAQ0AAADCoPdPbQ8HFAAAAAAAAAAAAAAAAAA..."
                            },
                            "qrCodeUrl": {
                              "type": "string",
                              "format": "uri",
                              "description": "7-day signed GCS URL of the QR code PNG"
                            },
                            "qrCodeExpiresAt": {
                              "type": "number",
                              "description": "Unix timestamp (ms) when qrCodeUrl expires"
                            },
                            "receivingAddress": {
                              "type": "string",
                              "description": "The wallet address where funds should be sent",
                              "example": "0xAbCdEf0123456789AbCdEf0123456789AbCdEf01"
                            },
                            "tokenContract": {
                              "type": "string",
                              "description": "The ERC20 token contract address",
                              "example": "0x765DE816845861e75A25fCA122bb6898B8B1282a"
                            },
                            "decimals": {
                              "type": "number",
                              "description": "Token decimals (default 18)",
                              "example": 18
                            }
                          },
                          "required": [
                            "address",
                            "network",
                            "depositType"
                          ],
                          "description": "Crypto Deposit Information"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "base64QRCode": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Base64 encoded QR code",
                              "example": "base64QRCode"
                            },
                            "qrCodeString": {
                              "type": "string",
                              "minLength": 1,
                              "description": "The Pix copy-and-paste code (BR Code payload) the payer pastes into their bank app. Pass it through unchanged — it carries its own checksum.",
                              "example": "qrCodeString"
                            },
                            "referenceCode": {
                              "type": "string",
                              "minLength": 1,
                              "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order",
                              "example": "REF123456"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "exclusiveMinimum": true,
                              "description": "The monetary value to be deposited into the bank. This amount should be positive and accurately reflect the intended deposit.",
                              "example": 1000
                            },
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "PIX"
                              ]
                            }
                          },
                          "required": [
                            "base64QRCode",
                            "qrCodeString",
                            "referenceCode",
                            "amount",
                            "depositType"
                          ],
                          "description": "Pix Deposit Information"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "CREDIT_CARD"
                              ]
                            }
                          },
                          "required": [
                            "depositType"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "bankName": {
                              "type": "string",
                              "description": "Name of the bank (present when the rail provides it)"
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Name of the account holder (present when the rail provides it)"
                            },
                            "clabe": {
                              "type": "string",
                              "description": "CLABE number"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Bank account number (e.g. from the BANK_TRANSFER payment method)"
                            },
                            "reference": {
                              "type": "string",
                              "description": "Payment reference (e.g. from the BANK_TRANSFER payment method)"
                            },
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "CLABE"
                              ],
                              "description": "Type of the deposit"
                            }
                          },
                          "required": [
                            "clabe",
                            "depositType"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "url": {
                              "type": "string",
                              "description": "URL of the PSE payment"
                            },
                            "amountPrefilled": {
                              "type": "boolean",
                              "description": "Whether the payment page already carries the amount. When false or absent, the payer must enter it."
                            },
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "PSE"
                              ],
                              "description": "Type of the deposit"
                            }
                          },
                          "required": [
                            "url",
                            "depositType"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BALANCE"
                              ]
                            }
                          },
                          "required": [
                            "depositType"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "PENDING"
                              ]
                            },
                            "currency": {
                              "type": "string",
                              "description": "Currency of the deposit"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the order/deposit"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount. It can be 0 while bank transfer details are open-amount or still being provisioned."
                            },
                            "extraDepositMethods": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "methodType": {
                                    "type": "string",
                                    "enum": [
                                      "HOSTED_CHECKOUT"
                                    ],
                                    "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                                  },
                                  "url": {
                                    "type": "string",
                                    "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                                    "example": "https://checkout.example.com/pay/abc123"
                                  },
                                  "callbackUrl": {
                                    "type": "string",
                                    "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Payment reference for this method (equals the deposit/order reference)"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                                  },
                                  "currency": {
                                    "type": "string",
                                    "description": "Currency of this method"
                                  },
                                  "expiresAt": {
                                    "type": "number",
                                    "description": "Unix ms after which `url` is no longer valid, when known"
                                  }
                                },
                                "required": [
                                  "methodType",
                                  "url"
                                ],
                                "description": "An additional, optional way to pay this deposit"
                              },
                              "description": "Additional ways to pay while the bank details are being provisioned (e.g. a hosted card page). Optional — ignore it and wait for the bank details if you only support bank transfer."
                            },
                            "pendingReason": {
                              "type": "string",
                              "enum": [
                                "collection_account_activating",
                                "accountless_per_account_corridor"
                              ],
                              "description": "Why the instructions are still being provisioned, when the reason is known. `collection_account_activating` means the collection account for this payer is being activated and payable details are expected shortly. `accountless_per_account_corridor` means this corridor collects only into a collection account dedicated to the paying account, this request names no account, and none can be created for it — so payable details will NOT arrive by waiting; create the deposit against an account instead. Absence never conveys timing on either surface: here it means only that no reason is classifiable, and an account-level deposit-method instruction never carries the field at all. Treat the values as an open set and ignore any you do not recognise."
                            }
                          },
                          "required": [
                            "depositType",
                            "currency",
                            "referenceCode",
                            "amount"
                          ],
                          "description": "Deposit details are being provisioned; poll the order/deposit or wait for webhook"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "IMPS"
                              ]
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Name of the bank"
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Name of the account holder"
                            },
                            "ifsc": {
                              "type": "string",
                              "description": "ifsc number"
                            },
                            "type": {
                              "type": "string",
                              "description": "Type of the deposit"
                            },
                            "branch": {
                              "type": "string",
                              "description": "Branch of the bank"
                            },
                            "bank": {
                              "type": "string",
                              "description": "Bank of the account"
                            },
                            "otp": {
                              "type": "string",
                              "description": "OTP of the deposit"
                            },
                            "bankNotes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "number",
                                    "description": "Type of note: -1 for warning, 1 for info"
                                  },
                                  "msg": {
                                    "type": "string",
                                    "description": "Message content"
                                  }
                                },
                                "required": [
                                  "type",
                                  "msg"
                                ]
                              },
                              "description": "Additional bank instructions"
                            }
                          },
                          "required": [
                            "depositType",
                            "accountNumber",
                            "bankName",
                            "accountHolder",
                            "ifsc",
                            "type",
                            "branch",
                            "bank",
                            "otp"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "UPI"
                              ]
                            },
                            "vpa": {
                              "type": "string",
                              "description": "Virtual Payment Address"
                            },
                            "name": {
                              "type": "string",
                              "description": "Name of the account holder"
                            },
                            "otp": {
                              "type": "string",
                              "description": "OTP for the transaction"
                            },
                            "paymentLink": {
                              "type": "string",
                              "description": "Payment link"
                            },
                            "upiNotes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "number",
                                    "description": "Type of note: -1 for warning, 1 for info"
                                  },
                                  "msg": {
                                    "type": "string",
                                    "description": "Message content"
                                  }
                                },
                                "required": [
                                  "type",
                                  "msg"
                                ]
                              },
                              "description": "Additional UPI instructions"
                            }
                          },
                          "required": [
                            "depositType",
                            "vpa",
                            "name",
                            "otp",
                            "paymentLink"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "AED_BANK_TRANSFER"
                              ]
                            },
                            "iban": {
                              "type": "string",
                              "description": "International Bank Account Number"
                            },
                            "name": {
                              "type": "string",
                              "description": "Name of the account holder"
                            },
                            "bank": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "type": {
                              "type": "string",
                              "description": "Account type"
                            },
                            "address": {
                              "type": "string",
                              "description": "Bank address"
                            },
                            "email": {
                              "type": "string",
                              "description": "Contact email"
                            },
                            "phoneNumber": {
                              "type": "string",
                              "description": "Contact phone number"
                            },
                            "transferCode": {
                              "type": "string",
                              "description": "Transfer code"
                            },
                            "poBox": {
                              "type": "string",
                              "description": "P.O. Box"
                            },
                            "otp": {
                              "type": "string",
                              "description": "OTP for the transaction"
                            },
                            "bankNotes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "number",
                                    "description": "Type of note: -1 for warning, 1 for info"
                                  },
                                  "msg": {
                                    "type": "string",
                                    "description": "Message content"
                                  }
                                },
                                "required": [
                                  "type",
                                  "msg"
                                ]
                              },
                              "description": "Additional bank instructions"
                            }
                          },
                          "required": [
                            "depositType",
                            "iban",
                            "name",
                            "bank",
                            "type",
                            "address",
                            "email",
                            "phoneNumber",
                            "transferCode",
                            "poBox",
                            "otp"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "SPEI"
                              ]
                            },
                            "clabe": {
                              "type": "string",
                              "description": "CLABE number"
                            },
                            "name": {
                              "type": "string",
                              "description": "Name of the account holder"
                            },
                            "bank": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankNotes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "number",
                                    "description": "Type of note: -1 for warning, 1 for info"
                                  },
                                  "msg": {
                                    "type": "string",
                                    "description": "Message content"
                                  }
                                },
                                "required": [
                                  "type",
                                  "msg"
                                ]
                              },
                              "description": "Additional bank instructions"
                            }
                          },
                          "required": [
                            "depositType",
                            "clabe",
                            "name",
                            "bank"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "TRY_BANK_TRANSFER"
                              ]
                            },
                            "iban": {
                              "type": "string",
                              "description": "International Bank Account Number"
                            },
                            "name": {
                              "type": "string",
                              "description": "Name of the account holder"
                            },
                            "bank": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "otp": {
                              "type": "string",
                              "description": "OTP for the transaction"
                            },
                            "bankNotes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "number",
                                    "description": "Type of note: -1 for warning, 1 for info"
                                  },
                                  "msg": {
                                    "type": "string",
                                    "description": "Message content"
                                  }
                                },
                                "required": [
                                  "type",
                                  "msg"
                                ]
                              },
                              "description": "Additional bank instructions"
                            }
                          },
                          "required": [
                            "depositType",
                            "iban",
                            "name",
                            "bank",
                            "otp"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "IDR_BANK_TRANSFER"
                              ]
                            },
                            "virtualAccount": {
                              "type": "string",
                              "description": "Virtual account number"
                            },
                            "name": {
                              "type": "string",
                              "description": "Name of the account holder"
                            },
                            "bank": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankNotes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "number",
                                    "description": "Type of note: -1 for warning, 1 for info"
                                  },
                                  "msg": {
                                    "type": "string",
                                    "description": "Message content"
                                  }
                                },
                                "required": [
                                  "type",
                                  "msg"
                                ]
                              },
                              "description": "Additional bank instructions"
                            }
                          },
                          "required": [
                            "depositType",
                            "virtualAccount",
                            "name",
                            "bank"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "THAI_QR"
                              ]
                            },
                            "qrCode": {
                              "type": "string",
                              "description": "QR code"
                            },
                            "otp": {
                              "type": "string",
                              "description": "OTP for the transaction"
                            },
                            "bankNotes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "number",
                                    "description": "Type of note: -1 for warning, 1 for info"
                                  },
                                  "msg": {
                                    "type": "string",
                                    "description": "Message content"
                                  }
                                },
                                "required": [
                                  "type",
                                  "msg"
                                ]
                              },
                              "description": "Additional bank instructions"
                            }
                          },
                          "required": [
                            "depositType",
                            "qrCode",
                            "otp"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "VIET_QR"
                              ]
                            },
                            "qrCode": {
                              "type": "string",
                              "description": "QR code"
                            },
                            "otp": {
                              "type": "string",
                              "description": "OTP for the transaction"
                            },
                            "bankNotes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "number",
                                    "description": "Type of note: -1 for warning, 1 for info"
                                  },
                                  "msg": {
                                    "type": "string",
                                    "description": "Message content"
                                  }
                                },
                                "required": [
                                  "type",
                                  "msg"
                                ]
                              },
                              "description": "Additional bank instructions"
                            }
                          },
                          "required": [
                            "depositType",
                            "qrCode",
                            "otp"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "GCASH"
                              ]
                            },
                            "qrCode": {
                              "type": "string",
                              "description": "QR code"
                            },
                            "otp": {
                              "type": "string",
                              "description": "OTP for the transaction"
                            },
                            "bankNotes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "number",
                                    "description": "Type of note: -1 for warning, 1 for info"
                                  },
                                  "msg": {
                                    "type": "string",
                                    "description": "Message content"
                                  }
                                },
                                "required": [
                                  "type",
                                  "msg"
                                ]
                              },
                              "description": "Additional bank instructions"
                            }
                          },
                          "required": [
                            "depositType",
                            "qrCode",
                            "otp"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "ARGENTINA_BANK_TRANSFER"
                              ]
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Account number"
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "accountNumber"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "ACH_US"
                              ]
                            },
                            "routingNumber": {
                              "type": "string",
                              "description": "US bank ABA routing number"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "US bank account number"
                            },
                            "beneficiaryName": {
                              "type": "string",
                              "description": "Beneficiary name on the account"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Name of the bank"
                            },
                            "bankAddress": {
                              "type": "string",
                              "description": "Address of the bank"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names (e.g. ACH, Wire)"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount in USD"
                            },
                            "referenceCode": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Reference code to include in the wire/ACH transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "routingNumber",
                            "accountNumber",
                            "beneficiaryName",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "ACH_PULL"
                              ]
                            }
                          },
                          "required": [
                            "depositType"
                          ],
                          "description": "Funds are pulled from the holder's own linked US bank account; no transfer instructions apply"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "LOCALBANK"
                              ],
                              "description": "Deprecated generic local-bank payin type. Superseded by the corridor-specific deposit types (e.g. SEPA, ACH_US, GBP_BANK_TRANSFER, CLABE/SPEI, PIX, ARGENTINA_BANK_TRANSFER, BANK_DEPOSIT_<CC>). Still returned on some corridors and on historical records, so integrators must continue to handle it. Discover the applicable per-currency method via GET /v1/currencies/{currency}/payin-schema.",
                              "deprecated": true
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "GBP_BANK_TRANSFER"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "UK bank account number"
                            },
                            "sortCode": {
                              "type": "string",
                              "description": "UK sort code"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Name of the bank"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names (e.g. Faster Payments, CHAPS, BACS)"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount in GBP"
                            },
                            "referenceCode": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Reference code to include in the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "accountHolder",
                            "accountNumber",
                            "sortCode",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_COL"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_CL"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_BO"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_BR"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_NG"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_KE"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_GH"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_ZA"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_TZ"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_UG"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_RW"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_MW"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_ZM"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_BW"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_CD"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_XOF"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_XAF"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_NG"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_KE"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_GH"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_ZA"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_TZ"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_UG"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_RW"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_MW"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_ZM"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_BW"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_CD"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_XOF"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_XAF"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        }
                      ],
                      "description": "Details of the deposit",
                      "examples": [
                        {
                          "accountHolder": "John Doe",
                          "iban": "DE8937XXXXXXXXXXXX3000",
                          "bic": "COBADEFFXXX",
                          "bankName": "Commerzbank",
                          "bankAddress": "Mainzer Landstrasse 151-153",
                          "bankCity": "Frankfurt",
                          "bankZipcode": "60327",
                          "bankCountry": "DE",
                          "amount": 1000,
                          "referenceCode": "ABC123",
                          "depositType": "SEPA"
                        }
                      ]
                    },
                    "depositInfoPending": {
                      "type": "boolean",
                      "description": "True while the payment instructions are still being prepared. Poll this deposit until it is false (or absent) before showing the instructions to the payer."
                    },
                    "complianceHold": {
                      "type": "object",
                      "properties": {
                        "reason": {
                          "type": "string",
                          "enum": [
                            "screening",
                            "fiat_monitoring"
                          ],
                          "description": "Compliance hold reason"
                        }
                      },
                      "required": [
                        "reason"
                      ],
                      "description": "Present while the inbound transfer funding this deposit is held in provider compliance review. The deposit stays Reviewing (amount 0, never credited) until the hold clears (promote to Received) or the transfer is rejected/returned (terminalize)."
                    }
                  },
                  "required": [
                    "depositId",
                    "createdAt",
                    "expectedAmount",
                    "amount",
                    "currency",
                    "fee",
                    "expectedFee",
                    "feeCurrency",
                    "status",
                    "depositInfo"
                  ],
                  "description": "Response schema for creating a deposit"
                }
              }
            }
          },
          "400": {
            "description": "Invalid parameters, or a malformed `Idempotency-Key` (over 128 characters, invalid characters, or the header sent more than once). Includes the corridor-selection refusals: an `originNetworkId` that is not one the corridor publishes, and an omitted `originNetworkId` on a mobile-money corridor that offers more than one network (discover the valid ids with GET /v1/currencies/{currency}/networks?rail={rail}&rampType=deposit).",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "409": {
            "description": "`Idempotency-Key` conflict: the key was already used with a different payload or by a different endpoint, or an identical request is still in progress — see the Idempotent writes section of the guide",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/deposits\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"externalReference\": \"partner-ref-0001\",\n      \"userData\": {\n        \"userType\": \"individual\",\n        \"firstName\": \"John\",\n        \"lastName\": \"Doe\",\n        \"userEmail\": \"user@virtuabroker.com\",\n        \"address\": \"123 Main St, Anytown, ES\",\n        \"taxDocumentType\": \"CC\",\n        \"taxId\": \"123-45-6789\",\n        \"country\": \"ES\",\n        \"state\": \"Madrid\",\n        \"postalCode\": \"12345\",\n        \"city\": \"Madrid\",\n        \"dob\": \"1990-01-01\",\n        \"phoneNumber\": \"+447700900123\",\n        \"kycId\": \"kyc-12345\",\n        \"activity\": \"worker\"\n      },\n      \"userDataId\": \"d290f1ee-6c54-4b01-90e6-d701748f0851\",\n      \"originCountry\": \"CI\",\n      \"originNetworkId\": \"3f9a1c7e-2b4d-4e8a-9c1f-0a1b2c3d4e5f\",\n      \"amount\": 100,\n      \"currency\": \"USDC\",\n      \"rail\": \"BTC\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api.virtuabroker.com/v1/deposits\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"externalReference\": \"partner-ref-0001\",\n        \"userData\": {\n            \"userType\": \"individual\",\n            \"firstName\": \"John\",\n            \"lastName\": \"Doe\",\n            \"userEmail\": \"user@virtuabroker.com\",\n            \"address\": \"123 Main St, Anytown, ES\",\n            \"taxDocumentType\": \"CC\",\n            \"taxId\": \"123-45-6789\",\n            \"country\": \"ES\",\n            \"state\": \"Madrid\",\n            \"postalCode\": \"12345\",\n            \"city\": \"Madrid\",\n            \"dob\": \"1990-01-01\",\n            \"phoneNumber\": \"+447700900123\",\n            \"kycId\": \"kyc-12345\",\n            \"activity\": \"worker\"\n        },\n        \"userDataId\": \"d290f1ee-6c54-4b01-90e6-d701748f0851\",\n        \"originCountry\": \"CI\",\n        \"originNetworkId\": \"3f9a1c7e-2b4d-4e8a-9c1f-0a1b2c3d4e5f\",\n        \"amount\": 100,\n        \"currency\": \"USDC\",\n        \"rail\": \"BTC\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api.virtuabroker.com/v1/deposits\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"externalReference\": \"partner-ref-0001\",\n  \"userData\": {\n    \"userType\": \"individual\",\n    \"firstName\": \"John\",\n    \"lastName\": \"Doe\",\n    \"userEmail\": \"user@virtuabroker.com\",\n    \"address\": \"123 Main St, Anytown, ES\",\n    \"taxDocumentType\": \"CC\",\n    \"taxId\": \"123-45-6789\",\n    \"country\": \"ES\",\n    \"state\": \"Madrid\",\n    \"postalCode\": \"12345\",\n    \"city\": \"Madrid\",\n    \"dob\": \"1990-01-01\",\n    \"phoneNumber\": \"+447700900123\",\n    \"kycId\": \"kyc-12345\",\n    \"activity\": \"worker\"\n  },\n  \"userDataId\": \"d290f1ee-6c54-4b01-90e6-d701748f0851\",\n  \"originCountry\": \"CI\",\n  \"originNetworkId\": \"3f9a1c7e-2b4d-4e8a-9c1f-0a1b2c3d4e5f\",\n  \"amount\": 100,\n  \"currency\": \"USDC\",\n  \"rail\": \"BTC\"\n}'"
          }
        ]
      },
      "get": {
        "summary": "List deposits",
        "description": "This endpoint retrieves a list of deposits based on various filters.",
        "tags": [
          "Deposits"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "EUR",
                    "USD",
                    "GBP",
                    "BRL",
                    "MXN",
                    "ARS",
                    "COP",
                    "PEN",
                    "NGN",
                    "KES",
                    "TZS",
                    "UGX",
                    "RWF",
                    "MWK",
                    "ZMW",
                    "XOF",
                    "XAF",
                    "BWP"
                  ]
                },
                {
                  "type": "string",
                  "enum": [
                    "USDC",
                    "USDT",
                    "CUSD",
                    "BTC",
                    "ETH",
                    "POL",
                    "SOL",
                    "TRX",
                    "AVAX",
                    "XRP",
                    "BNB"
                  ]
                }
              ],
              "description": "Optional currency code to filter the deposits",
              "examples": [
                "EUR"
              ]
            },
            "required": false,
            "description": "Optional currency code to filter the deposits",
            "name": "currency",
            "in": "query"
          },
          {
            "schema": {
              "type": "number",
              "minimum": 0
            },
            "required": false,
            "name": "minAmount",
            "in": "query"
          },
          {
            "schema": {
              "type": "number",
              "minimum": 0
            },
            "required": false,
            "name": "maxAmount",
            "in": "query"
          },
          {
            "schema": {
              "type": "integer",
              "minimum": 0
            },
            "required": false,
            "name": "from",
            "in": "query"
          },
          {
            "schema": {
              "type": "integer",
              "minimum": 0
            },
            "required": false,
            "name": "to",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
              "description": "Email of the user making the request. For a business payer this matches operations under any of its identities — the representative email and the organisation account — so listings stay complete across both.",
              "example": "user@example.com"
            },
            "required": false,
            "description": "Email of the user making the request. For a business payer this matches operations under any of its identities — the representative email and the organisation account — so listings stay complete across both.",
            "name": "userEmail",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "description": "General search (e.g. email or text). When provided, backend may use it for userEmail or text search."
            },
            "required": false,
            "description": "General search (e.g. email or text). When provided, backend may use it for userEmail or text search.",
            "name": "search",
            "in": "query"
          },
          {
            "schema": {
              "type": "integer",
              "minimum": 1,
              "description": "Deposits per page. Defaults to 10. A full page means there may be more — use `page` to continue, or GET /v1/deposits/count for the total. Large pages are accepted; very large ones are bounded by the search backend and will report an error rather than silently returning fewer rows.",
              "example": 50
            },
            "required": false,
            "description": "Deposits per page. Defaults to 10. A full page means there may be more — use `page` to continue, or GET /v1/deposits/count for the total. Large pages are accepted; very large ones are bounded by the search backend and will report an error rather than silently returning fewer rows.",
            "name": "limit",
            "in": "query"
          },
          {
            "schema": {
              "type": "integer",
              "minimum": 1,
              "description": "1-based page number. Defaults to 1.",
              "example": 1
            },
            "required": false,
            "description": "1-based page number. Defaults to 1.",
            "name": "page",
            "in": "query"
          },
          {
            "schema": {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "Pending",
                    "Processing",
                    "Success",
                    "Failed",
                    "Canceled",
                    "Reviewing"
                  ],
                  "description": "Common status values that are shared across all operation types",
                  "examples": [
                    "Pending",
                    "Processing",
                    "Success",
                    "Failed",
                    "Canceled",
                    "Reviewing"
                  ]
                },
                {
                  "type": "string",
                  "enum": [
                    "PendingCancel",
                    "Received"
                  ]
                },
                {
                  "type": "array",
                  "items": {
                    "anyOf": [
                      {
                        "type": "string",
                        "enum": [
                          "Pending",
                          "Processing",
                          "Success",
                          "Failed",
                          "Canceled",
                          "Reviewing"
                        ],
                        "description": "Common status values that are shared across all operation types",
                        "examples": [
                          "Pending",
                          "Processing",
                          "Success",
                          "Failed",
                          "Canceled",
                          "Reviewing"
                        ]
                      },
                      {
                        "type": "string",
                        "enum": [
                          "PendingCancel",
                          "Received"
                        ]
                      }
                    ],
                    "description": "Status for deposit operations",
                    "examples": [
                      "Pending",
                      "Success",
                      "Failed",
                      "Received",
                      "PendingCancel"
                    ]
                  }
                }
              ],
              "description": "Optional status to filter deposits. Can be a single status or an array of statuses for multiple filtering",
              "examples": [
                "Pending",
                [
                  "Pending",
                  "Success"
                ],
                [
                  "Pending",
                  "Processing",
                  "Success"
                ]
              ]
            },
            "required": false,
            "description": "Optional status to filter deposits. Can be a single status or an array of statuses for multiple filtering",
            "name": "status",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful retrieval of deposits list",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "depositId": {
                        "type": "string",
                        "minLength": 1,
                        "description": "ID of the deposit. Normally a 12-character internal id; deposits created before mid-2026 may carry a longer legacy id. Treat it as an opaque string."
                      },
                      "externalReference": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "description": "Your own reference for this deposit. Stored as-is and returned on create, detail and list, so you can look the deposit up by it after a network timeout instead of retrying blind. Not interpreted by VirtuaBroker and not shown to the payer — for the payer's transfer reference use depositInfo.referenceCode.",
                        "examples": [
                          "partner-ref-0001",
                          "inv_2026_00417"
                        ]
                      },
                      "userData": {
                        "oneOf": [
                          {
                            "type": "object",
                            "properties": {
                              "userType": {
                                "type": "string",
                                "enum": [
                                  "individual"
                                ]
                              },
                              "firstName": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 50,
                                "description": "First name of the user making the deposit (or representative for business)",
                                "examples": [
                                  "John",
                                  "Alice",
                                  "Bob"
                                ]
                              },
                              "lastName": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "Last name of the user making the deposit (or representative for business)",
                                "examples": [
                                  "Doe",
                                  "Smith",
                                  "Johnson"
                                ]
                              },
                              "userEmail": {
                                "type": "string",
                                "maxLength": 254,
                                "format": "email",
                                "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                "description": "Email of the user making the deposit",
                                "examples": [
                                  "user@virtuabroker.com",
                                  "john.doe@example.com",
                                  "alice@example.com"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "maxLength": 150,
                                "description": "Address of the user making the deposit",
                                "examples": [
                                  "123 Main St, Anytown, ES",
                                  "456 Elm St, Anytown, ES",
                                  "789 Oak St, Anytown, ES"
                                ]
                              },
                              "taxDocumentType": {
                                "type": "string",
                                "maxLength": 50,
                                "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                "examples": [
                                  "CC",
                                  "NIT",
                                  "CE",
                                  "NIF",
                                  "Other"
                                ]
                              },
                              "taxId": {
                                "type": "string",
                                "maxLength": 30,
                                "description": "Tax ID of the user making the deposit",
                                "examples": [
                                  "123-45-6789",
                                  "987-65-4321",
                                  "111-22-3333"
                                ]
                              },
                              "country": {
                                "type": "string",
                                "enum": [
                                  "US",
                                  "CA",
                                  "GB",
                                  "DE",
                                  "FR",
                                  "AU",
                                  "JP",
                                  "KR",
                                  "SE",
                                  "NO",
                                  "DK",
                                  "FI",
                                  "NL",
                                  "BE",
                                  "CH",
                                  "AT",
                                  "NZ",
                                  "SG",
                                  "IE",
                                  "LU",
                                  "PT",
                                  "ES",
                                  "IT",
                                  "GR",
                                  "CZ",
                                  "PL",
                                  "HU",
                                  "SK",
                                  "SI",
                                  "EE",
                                  "LT",
                                  "LV",
                                  "IS",
                                  "MT",
                                  "CY",
                                  "HR",
                                  "RO",
                                  "BG",
                                  "BR",
                                  "AR",
                                  "CL",
                                  "MX",
                                  "CO",
                                  "PE",
                                  "PA",
                                  "UY",
                                  "BO",
                                  "ZA",
                                  "NG",
                                  "KE",
                                  "GH",
                                  "TZ",
                                  "UG",
                                  "RW",
                                  "MW",
                                  "ZM",
                                  "BW",
                                  "CD",
                                  "CI",
                                  "CM",
                                  "IL",
                                  "AE",
                                  "QA",
                                  "SA",
                                  "OM",
                                  "KW",
                                  "BH",
                                  "MY",
                                  "PH",
                                  "TH",
                                  "VN",
                                  "ID",
                                  "IN",
                                  "LK",
                                  "NP",
                                  "BD",
                                  "PK",
                                  "EG",
                                  "MA",
                                  "DZ",
                                  "TN",
                                  "JO",
                                  "LB",
                                  "TR",
                                  "KH",
                                  "MM",
                                  "LA",
                                  "EN",
                                  "BT",
                                  "VE",
                                  "TW",
                                  "HK",
                                  "CN"
                                ],
                                "description": "Country code of the user making the deposit",
                                "examples": [
                                  "ES",
                                  "US",
                                  "GB"
                                ]
                              },
                              "state": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "State of the user making the deposit",
                                "examples": [
                                  "Madrid",
                                  "New York",
                                  "London"
                                ]
                              },
                              "postalCode": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 30,
                                "description": "Postal code of the user making the deposit",
                                "examples": [
                                  "12345",
                                  "67890",
                                  "abcde"
                                ]
                              },
                              "city": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "City of the user making the deposit",
                                "examples": [
                                  "Madrid",
                                  "New York",
                                  "London"
                                ]
                              },
                              "dob": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 30,
                                "description": "Date of birth of the user making the deposit",
                                "examples": [
                                  "1990-01-01",
                                  "1995-05-15",
                                  "1988-12-31"
                                ]
                              },
                              "phoneNumber": {
                                "type": "string",
                                "maxLength": 30,
                                "description": "Phone number of the user making the deposit",
                                "examples": [
                                  "+447700900123",
                                  "+447700900456",
                                  "+447700900789"
                                ]
                              },
                              "kycId": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 300,
                                "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                "examples": [
                                  "kyc-12345",
                                  "kyc-67890",
                                  "kyc-abcde"
                                ]
                              },
                              "activity": {
                                "type": "string",
                                "description": "Activity of the user making the deposit",
                                "examples": [
                                  "worker",
                                  "business",
                                  "student"
                                ]
                              }
                            },
                            "required": [
                              "userType",
                              "firstName",
                              "userEmail",
                              "country"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "userType": {
                                "type": "string",
                                "enum": [
                                  "business"
                                ]
                              },
                              "businessName": {
                                "type": "string",
                                "maxLength": 150,
                                "description": "Business name (required when userType is business)",
                                "examples": [
                                  "Acme Corp",
                                  "Tech Solutions Inc",
                                  "Global Services Ltd"
                                ]
                              },
                              "firstName": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 50,
                                "description": "First name of the user making the deposit (or representative for business)",
                                "examples": [
                                  "John",
                                  "Alice",
                                  "Bob"
                                ]
                              },
                              "userEmail": {
                                "type": "string",
                                "maxLength": 254,
                                "format": "email",
                                "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                "description": "Email of the user making the deposit",
                                "examples": [
                                  "user@virtuabroker.com",
                                  "john.doe@example.com",
                                  "alice@example.com"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "maxLength": 150,
                                "description": "Address of the user making the deposit",
                                "examples": [
                                  "123 Main St, Anytown, ES",
                                  "456 Elm St, Anytown, ES",
                                  "789 Oak St, Anytown, ES"
                                ]
                              },
                              "taxDocumentType": {
                                "type": "string",
                                "maxLength": 50,
                                "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                "examples": [
                                  "CC",
                                  "NIT",
                                  "CE",
                                  "NIF",
                                  "Other"
                                ]
                              },
                              "taxId": {
                                "type": "string",
                                "maxLength": 30,
                                "description": "Tax ID of the user making the deposit",
                                "examples": [
                                  "123-45-6789",
                                  "987-65-4321",
                                  "111-22-3333"
                                ]
                              },
                              "country": {
                                "type": "string",
                                "enum": [
                                  "US",
                                  "CA",
                                  "GB",
                                  "DE",
                                  "FR",
                                  "AU",
                                  "JP",
                                  "KR",
                                  "SE",
                                  "NO",
                                  "DK",
                                  "FI",
                                  "NL",
                                  "BE",
                                  "CH",
                                  "AT",
                                  "NZ",
                                  "SG",
                                  "IE",
                                  "LU",
                                  "PT",
                                  "ES",
                                  "IT",
                                  "GR",
                                  "CZ",
                                  "PL",
                                  "HU",
                                  "SK",
                                  "SI",
                                  "EE",
                                  "LT",
                                  "LV",
                                  "IS",
                                  "MT",
                                  "CY",
                                  "HR",
                                  "RO",
                                  "BG",
                                  "BR",
                                  "AR",
                                  "CL",
                                  "MX",
                                  "CO",
                                  "PE",
                                  "PA",
                                  "UY",
                                  "BO",
                                  "ZA",
                                  "NG",
                                  "KE",
                                  "GH",
                                  "TZ",
                                  "UG",
                                  "RW",
                                  "MW",
                                  "ZM",
                                  "BW",
                                  "CD",
                                  "CI",
                                  "CM",
                                  "IL",
                                  "AE",
                                  "QA",
                                  "SA",
                                  "OM",
                                  "KW",
                                  "BH",
                                  "MY",
                                  "PH",
                                  "TH",
                                  "VN",
                                  "ID",
                                  "IN",
                                  "LK",
                                  "NP",
                                  "BD",
                                  "PK",
                                  "EG",
                                  "MA",
                                  "DZ",
                                  "TN",
                                  "JO",
                                  "LB",
                                  "TR",
                                  "KH",
                                  "MM",
                                  "LA",
                                  "EN",
                                  "BT",
                                  "VE",
                                  "TW",
                                  "HK",
                                  "CN"
                                ],
                                "description": "Country code of the user making the deposit",
                                "examples": [
                                  "ES",
                                  "US",
                                  "GB"
                                ]
                              },
                              "state": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "State of the user making the deposit",
                                "examples": [
                                  "Madrid",
                                  "New York",
                                  "London"
                                ]
                              },
                              "postalCode": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 30,
                                "description": "Postal code of the user making the deposit",
                                "examples": [
                                  "12345",
                                  "67890",
                                  "abcde"
                                ]
                              },
                              "city": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "City of the user making the deposit",
                                "examples": [
                                  "Madrid",
                                  "New York",
                                  "London"
                                ]
                              },
                              "dob": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 30,
                                "description": "Date of birth of the user making the deposit",
                                "examples": [
                                  "1990-01-01",
                                  "1995-05-15",
                                  "1988-12-31"
                                ]
                              },
                              "phoneNumber": {
                                "type": "string",
                                "maxLength": 30,
                                "description": "Phone number of the user making the deposit",
                                "examples": [
                                  "+447700900123",
                                  "+447700900456",
                                  "+447700900789"
                                ]
                              },
                              "kycId": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 300,
                                "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                "examples": [
                                  "kyc-12345",
                                  "kyc-67890",
                                  "kyc-abcde"
                                ]
                              },
                              "activity": {
                                "type": "string",
                                "description": "Activity of the user making the deposit",
                                "examples": [
                                  "worker",
                                  "business",
                                  "student"
                                ]
                              }
                            },
                            "required": [
                              "userType",
                              "businessName",
                              "firstName",
                              "userEmail",
                              "country"
                            ]
                          }
                        ],
                        "description": "User data of the person/company making the deposit",
                        "examples": [
                          {
                            "userType": "individual",
                            "firstName": "John",
                            "lastName": "Doe",
                            "userEmail": "user@virtuabroker.com",
                            "address": "123 Main St, Anytown, ES",
                            "taxId": "123-45-6789",
                            "country": "ES"
                          },
                          {
                            "userType": "individual",
                            "firstName": "Alice",
                            "lastName": "Smith",
                            "userEmail": "alice@example.com",
                            "address": "456 Elm St, Anytown, ES",
                            "taxId": "987-65-4321",
                            "country": "ES"
                          }
                        ]
                      },
                      "createdAt": {
                        "type": "number",
                        "description": "Creation time of the deposit",
                        "examples": [
                          1723027132,
                          1723027133,
                          1723027134
                        ]
                      },
                      "rail": {
                        "type": "string",
                        "enum": [
                          "BALANCE",
                          "SEPA",
                          "BTC",
                          "ETH",
                          "MATIC",
                          "POLYGON",
                          "CELO",
                          "TRON",
                          "SOLANA",
                          "ARBITRUM",
                          "OPTIMISM",
                          "AVALANCHE",
                          "BSC",
                          "BASE",
                          "XRP",
                          "PIX_BR",
                          "UPI",
                          "IMPS",
                          "TRY_BANK_TRANSFER",
                          "AED_BANK_TRANSFER",
                          "SPEI",
                          "IDR_BANK_TRANSFER",
                          "CREDIT_CARD",
                          "THAI_QR",
                          "VIET_QR",
                          "GCASH",
                          "ARGENTINA_BANK_TRANSFER",
                          "PSE",
                          "CLABE",
                          "PIX",
                          "BANK_DEPOSIT_COL",
                          "BANK_DEPOSIT_AR",
                          "BANK_DEPOSIT_CL",
                          "BANK_DEPOSIT_PE",
                          "BANK_DEPOSIT_BO",
                          "BANK_DEPOSIT_BR",
                          "BANK_DEPOSIT_NG",
                          "BANK_DEPOSIT_KE",
                          "BANK_DEPOSIT_GH",
                          "BANK_DEPOSIT_ZA",
                          "BANK_DEPOSIT_TZ",
                          "BANK_DEPOSIT_UG",
                          "BANK_DEPOSIT_RW",
                          "BANK_DEPOSIT_MW",
                          "BANK_DEPOSIT_ZM",
                          "BANK_DEPOSIT_BW",
                          "BANK_DEPOSIT_CD",
                          "BANK_DEPOSIT_XOF",
                          "BANK_DEPOSIT_XAF",
                          "MOBILE_MONEY_NG",
                          "MOBILE_MONEY_KE",
                          "MOBILE_MONEY_GH",
                          "MOBILE_MONEY_ZA",
                          "MOBILE_MONEY_TZ",
                          "MOBILE_MONEY_UG",
                          "MOBILE_MONEY_RW",
                          "MOBILE_MONEY_MW",
                          "MOBILE_MONEY_ZM",
                          "MOBILE_MONEY_BW",
                          "MOBILE_MONEY_CD",
                          "MOBILE_MONEY_XOF",
                          "MOBILE_MONEY_XAF",
                          "ACH_US",
                          "GBP_BANK_TRANSFER"
                        ],
                        "description": "Rail of the deposit"
                      },
                      "receivedAt": {
                        "type": "number",
                        "description": "Unix ms timestamp of when the funds for this deposit ARRIVED — recorded when the incoming payment is matched to the deposit, which is before it is credited. Present whenever funds have arrived, including a deposit whose funds are still held in review; omitted entirely when no funds ever arrived, so a never-funded or cancelled deposit has no value here and its presence is a reliable settlement signal for reconciliation. Identical on GET /v1/deposits and GET /v1/deposits/{depositId}. Note that the deposit object embedded in order and operation responses does not yet apply this rule — it returns the stored value. Not the creation time — use createdAt for that.",
                        "examples": [
                          1723027132000,
                          1723027133000,
                          1723027134000
                        ]
                      },
                      "expectedAmount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Amount expected of the deposit",
                        "examples": [
                          1000,
                          2000,
                          3000
                        ]
                      },
                      "amount": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Amount received of the deposit",
                        "examples": [
                          1000,
                          2000,
                          3000
                        ]
                      },
                      "currency": {
                        "anyOf": [
                          {
                            "type": "string",
                            "enum": [
                              "EUR",
                              "USD",
                              "GBP",
                              "BRL",
                              "MXN",
                              "ARS",
                              "COP",
                              "PEN",
                              "NGN",
                              "KES",
                              "TZS",
                              "UGX",
                              "RWF",
                              "MWK",
                              "ZMW",
                              "XOF",
                              "XAF",
                              "BWP"
                            ]
                          },
                          {
                            "type": "string",
                            "enum": [
                              "USDC",
                              "USDT",
                              "CUSD",
                              "BTC",
                              "ETH",
                              "POL",
                              "SOL",
                              "TRX",
                              "AVAX",
                              "XRP",
                              "BNB"
                            ]
                          }
                        ],
                        "description": "Currency of the deposit",
                        "examples": [
                          "EUR",
                          "BRL"
                        ]
                      },
                      "fee": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Fee for the deposit. This value is written once the deposit has been executed. Meanwhile it will appear 0.",
                        "example": 10
                      },
                      "expectedFee": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Fee for the deposit. This value is correlated with the expected amount for the deposit.",
                        "examples": [
                          10,
                          20,
                          30
                        ]
                      },
                      "feeCurrency": {
                        "anyOf": [
                          {
                            "type": "string",
                            "enum": [
                              "EUR",
                              "USD",
                              "GBP",
                              "BRL",
                              "MXN",
                              "ARS",
                              "COP",
                              "PEN",
                              "NGN",
                              "KES",
                              "TZS",
                              "UGX",
                              "RWF",
                              "MWK",
                              "ZMW",
                              "XOF",
                              "XAF",
                              "BWP"
                            ]
                          },
                          {
                            "type": "string",
                            "enum": [
                              "USDC",
                              "USDT",
                              "CUSD",
                              "BTC",
                              "ETH",
                              "POL",
                              "SOL",
                              "TRX",
                              "AVAX",
                              "XRP",
                              "BNB"
                            ]
                          }
                        ],
                        "description": "Currency of the fee",
                        "examples": [
                          "EUR",
                          "BRL"
                        ]
                      },
                      "status": {
                        "anyOf": [
                          {
                            "type": "string",
                            "enum": [
                              "Pending",
                              "Processing",
                              "Success",
                              "Failed",
                              "Canceled",
                              "Reviewing"
                            ],
                            "description": "Common status values that are shared across all operation types",
                            "examples": [
                              "Pending",
                              "Processing",
                              "Success",
                              "Failed",
                              "Canceled",
                              "Reviewing"
                            ]
                          },
                          {
                            "type": "string",
                            "enum": [
                              "PendingCancel",
                              "Received"
                            ]
                          }
                        ],
                        "description": "Status of the deposit",
                        "examples": [
                          "Pending",
                          "Success",
                          "Failed",
                          "Received",
                          "PendingCancel"
                        ]
                      },
                      "depositInfo": {
                        "oneOf": [
                          {
                            "type": "object",
                            "properties": {
                              "accountHolder": {
                                "type": "string",
                                "description": "Name of the account holder",
                                "example": "John Doe"
                              },
                              "iban": {
                                "type": "string",
                                "description": "SEPA Bank Account Number",
                                "example": "DE8937XXXXXXXXXXXX3000"
                              },
                              "bic": {
                                "type": "string",
                                "description": "Bank BIC/SWIFT code",
                                "example": "DEUTDEFF"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Name of the bank",
                                "example": "Deutsche Bank"
                              },
                              "bankAddress": {
                                "type": "string",
                                "description": "Address of the bank",
                                "example": "Taunusanlage 12"
                              },
                              "bankCity": {
                                "type": "string",
                                "description": "City of the bank",
                                "example": "Frankfurt am Main"
                              },
                              "bankZipcode": {
                                "type": "string",
                                "description": "Zipcode of the bank",
                                "example": "60325"
                              },
                              "bankCountry": {
                                "type": "string",
                                "enum": [
                                  "US",
                                  "CA",
                                  "GB",
                                  "DE",
                                  "FR",
                                  "AU",
                                  "JP",
                                  "KR",
                                  "SE",
                                  "NO",
                                  "DK",
                                  "FI",
                                  "NL",
                                  "BE",
                                  "CH",
                                  "AT",
                                  "NZ",
                                  "SG",
                                  "IE",
                                  "LU",
                                  "PT",
                                  "ES",
                                  "IT",
                                  "GR",
                                  "CZ",
                                  "PL",
                                  "HU",
                                  "SK",
                                  "SI",
                                  "EE",
                                  "LT",
                                  "LV",
                                  "IS",
                                  "MT",
                                  "CY",
                                  "HR",
                                  "RO",
                                  "BG",
                                  "BR",
                                  "AR",
                                  "CL",
                                  "MX",
                                  "CO",
                                  "PE",
                                  "PA",
                                  "UY",
                                  "BO",
                                  "ZA",
                                  "NG",
                                  "KE",
                                  "GH",
                                  "TZ",
                                  "UG",
                                  "RW",
                                  "MW",
                                  "ZM",
                                  "BW",
                                  "CD",
                                  "CI",
                                  "CM",
                                  "IL",
                                  "AE",
                                  "QA",
                                  "SA",
                                  "OM",
                                  "KW",
                                  "BH",
                                  "MY",
                                  "PH",
                                  "TH",
                                  "VN",
                                  "ID",
                                  "IN",
                                  "LK",
                                  "NP",
                                  "BD",
                                  "PK",
                                  "EG",
                                  "MA",
                                  "DZ",
                                  "TN",
                                  "JO",
                                  "LB",
                                  "TR",
                                  "KH",
                                  "MM",
                                  "LA",
                                  "EN",
                                  "BT",
                                  "VE",
                                  "TW",
                                  "HK",
                                  "CN"
                                ],
                                "description": "Country of the bank",
                                "example": "DE"
                              },
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "SEPA"
                                ]
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount. It can be 0 for open-amount bank transfers where the sender chooses the final amount from their bank.",
                                "example": 1000
                              },
                              "referenceCode": {
                                "type": "string",
                                "minLength": 1,
                                "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order. The user must include this code when making the deposit to ensure accurate processing. In cases where the reference code is incorrect or missing, we manually match orders based on the sender's name and other available details. In case the deposit is not matched, we will mark the order as Reviewing and the system will require manual attention.",
                                "example": "REF123456"
                              },
                              "extraDepositMethods": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "methodType": {
                                      "type": "string",
                                      "enum": [
                                        "HOSTED_CHECKOUT"
                                      ],
                                      "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                                    },
                                    "url": {
                                      "type": "string",
                                      "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                                      "example": "https://checkout.example.com/pay/abc123"
                                    },
                                    "callbackUrl": {
                                      "type": "string",
                                      "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Payment reference for this method (equals the deposit/order reference)"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                                    },
                                    "currency": {
                                      "type": "string",
                                      "description": "Currency of this method"
                                    },
                                    "expiresAt": {
                                      "type": "number",
                                      "description": "Unix ms after which `url` is no longer valid, when known"
                                    }
                                  },
                                  "required": [
                                    "methodType",
                                    "url"
                                  ],
                                  "description": "An additional, optional way to pay this deposit"
                                },
                                "description": "Additional, optional ways to pay this same deposit (e.g. a hosted card page). The bank details above remain the primary method; ignore this field if you only support bank transfer."
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ],
                            "description": "Detailed information about a bank deposit, including the amount and a unique reference code for identification."
                          },
                          {
                            "type": "object",
                            "properties": {
                              "address": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Crypto wallet address",
                                "example": "0x1A2b3C4d5E6f7890AbCdEf1234567890AbCdEf12"
                              },
                              "network": {
                                "type": "string",
                                "enum": [
                                  "MATIC",
                                  "ETH",
                                  "CELO",
                                  "TRON",
                                  "BTC",
                                  "SOLANA",
                                  "XRP",
                                  "CARDANO",
                                  "BSC",
                                  "ARBITRUM",
                                  "OPTIMISM",
                                  "AVALANCHE",
                                  "BASE"
                                ],
                                "description": "Network for the deposit for crypto deposits",
                                "examples": [
                                  "ETH",
                                  "MATIC",
                                  "CELO"
                                ]
                              },
                              "memo": {
                                "type": "string",
                                "description": "Optional memo for the transaction",
                                "example": "Payment for services"
                              },
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "CRYPTO"
                                ]
                              },
                              "qrCode": {
                                "type": "string",
                                "description": "Base64-encoded QR image for the deposit address",
                                "example": "iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAIAAADTED8xAAABpklEQVR42u3BAQ0AAADCoPdPbQ8HFAAAAAAAAAAAAAAAAAA..."
                              },
                              "qrCodeUrl": {
                                "type": "string",
                                "format": "uri",
                                "description": "7-day signed GCS URL of the QR code PNG"
                              },
                              "qrCodeExpiresAt": {
                                "type": "number",
                                "description": "Unix timestamp (ms) when qrCodeUrl expires"
                              },
                              "receivingAddress": {
                                "type": "string",
                                "description": "The wallet address where funds should be sent",
                                "example": "0xAbCdEf0123456789AbCdEf0123456789AbCdEf01"
                              },
                              "tokenContract": {
                                "type": "string",
                                "description": "The ERC20 token contract address",
                                "example": "0x765DE816845861e75A25fCA122bb6898B8B1282a"
                              },
                              "decimals": {
                                "type": "number",
                                "description": "Token decimals (default 18)",
                                "example": 18
                              }
                            },
                            "required": [
                              "address",
                              "network",
                              "depositType"
                            ],
                            "description": "Crypto Deposit Information"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "base64QRCode": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Base64 encoded QR code",
                                "example": "base64QRCode"
                              },
                              "qrCodeString": {
                                "type": "string",
                                "minLength": 1,
                                "description": "The Pix copy-and-paste code (BR Code payload) the payer pastes into their bank app. Pass it through unchanged — it carries its own checksum.",
                                "example": "qrCodeString"
                              },
                              "referenceCode": {
                                "type": "string",
                                "minLength": 1,
                                "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order",
                                "example": "REF123456"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "exclusiveMinimum": true,
                                "description": "The monetary value to be deposited into the bank. This amount should be positive and accurately reflect the intended deposit.",
                                "example": 1000
                              },
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "PIX"
                                ]
                              }
                            },
                            "required": [
                              "base64QRCode",
                              "qrCodeString",
                              "referenceCode",
                              "amount",
                              "depositType"
                            ],
                            "description": "Pix Deposit Information"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "CREDIT_CARD"
                                ]
                              }
                            },
                            "required": [
                              "depositType"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "bankName": {
                                "type": "string",
                                "description": "Name of the bank (present when the rail provides it)"
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Name of the account holder (present when the rail provides it)"
                              },
                              "clabe": {
                                "type": "string",
                                "description": "CLABE number"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Bank account number (e.g. from the BANK_TRANSFER payment method)"
                              },
                              "reference": {
                                "type": "string",
                                "description": "Payment reference (e.g. from the BANK_TRANSFER payment method)"
                              },
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "CLABE"
                                ],
                                "description": "Type of the deposit"
                              }
                            },
                            "required": [
                              "clabe",
                              "depositType"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "url": {
                                "type": "string",
                                "description": "URL of the PSE payment"
                              },
                              "amountPrefilled": {
                                "type": "boolean",
                                "description": "Whether the payment page already carries the amount. When false or absent, the payer must enter it."
                              },
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "PSE"
                                ],
                                "description": "Type of the deposit"
                              }
                            },
                            "required": [
                              "url",
                              "depositType"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BALANCE"
                                ]
                              }
                            },
                            "required": [
                              "depositType"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "PENDING"
                                ]
                              },
                              "currency": {
                                "type": "string",
                                "description": "Currency of the deposit"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the order/deposit"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount. It can be 0 while bank transfer details are open-amount or still being provisioned."
                              },
                              "extraDepositMethods": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "methodType": {
                                      "type": "string",
                                      "enum": [
                                        "HOSTED_CHECKOUT"
                                      ],
                                      "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                                    },
                                    "url": {
                                      "type": "string",
                                      "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                                      "example": "https://checkout.example.com/pay/abc123"
                                    },
                                    "callbackUrl": {
                                      "type": "string",
                                      "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Payment reference for this method (equals the deposit/order reference)"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                                    },
                                    "currency": {
                                      "type": "string",
                                      "description": "Currency of this method"
                                    },
                                    "expiresAt": {
                                      "type": "number",
                                      "description": "Unix ms after which `url` is no longer valid, when known"
                                    }
                                  },
                                  "required": [
                                    "methodType",
                                    "url"
                                  ],
                                  "description": "An additional, optional way to pay this deposit"
                                },
                                "description": "Additional ways to pay while the bank details are being provisioned (e.g. a hosted card page). Optional — ignore it and wait for the bank details if you only support bank transfer."
                              },
                              "pendingReason": {
                                "type": "string",
                                "enum": [
                                  "collection_account_activating",
                                  "accountless_per_account_corridor"
                                ],
                                "description": "Why the instructions are still being provisioned, when the reason is known. `collection_account_activating` means the collection account for this payer is being activated and payable details are expected shortly. `accountless_per_account_corridor` means this corridor collects only into a collection account dedicated to the paying account, this request names no account, and none can be created for it — so payable details will NOT arrive by waiting; create the deposit against an account instead. Absence never conveys timing on either surface: here it means only that no reason is classifiable, and an account-level deposit-method instruction never carries the field at all. Treat the values as an open set and ignore any you do not recognise."
                              }
                            },
                            "required": [
                              "depositType",
                              "currency",
                              "referenceCode",
                              "amount"
                            ],
                            "description": "Deposit details are being provisioned; poll the order/deposit or wait for webhook"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "IMPS"
                                ]
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Name of the bank"
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Name of the account holder"
                              },
                              "ifsc": {
                                "type": "string",
                                "description": "ifsc number"
                              },
                              "type": {
                                "type": "string",
                                "description": "Type of the deposit"
                              },
                              "branch": {
                                "type": "string",
                                "description": "Branch of the bank"
                              },
                              "bank": {
                                "type": "string",
                                "description": "Bank of the account"
                              },
                              "otp": {
                                "type": "string",
                                "description": "OTP of the deposit"
                              },
                              "bankNotes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "number",
                                      "description": "Type of note: -1 for warning, 1 for info"
                                    },
                                    "msg": {
                                      "type": "string",
                                      "description": "Message content"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "msg"
                                  ]
                                },
                                "description": "Additional bank instructions"
                              }
                            },
                            "required": [
                              "depositType",
                              "accountNumber",
                              "bankName",
                              "accountHolder",
                              "ifsc",
                              "type",
                              "branch",
                              "bank",
                              "otp"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "UPI"
                                ]
                              },
                              "vpa": {
                                "type": "string",
                                "description": "Virtual Payment Address"
                              },
                              "name": {
                                "type": "string",
                                "description": "Name of the account holder"
                              },
                              "otp": {
                                "type": "string",
                                "description": "OTP for the transaction"
                              },
                              "paymentLink": {
                                "type": "string",
                                "description": "Payment link"
                              },
                              "upiNotes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "number",
                                      "description": "Type of note: -1 for warning, 1 for info"
                                    },
                                    "msg": {
                                      "type": "string",
                                      "description": "Message content"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "msg"
                                  ]
                                },
                                "description": "Additional UPI instructions"
                              }
                            },
                            "required": [
                              "depositType",
                              "vpa",
                              "name",
                              "otp",
                              "paymentLink"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "AED_BANK_TRANSFER"
                                ]
                              },
                              "iban": {
                                "type": "string",
                                "description": "International Bank Account Number"
                              },
                              "name": {
                                "type": "string",
                                "description": "Name of the account holder"
                              },
                              "bank": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "type": {
                                "type": "string",
                                "description": "Account type"
                              },
                              "address": {
                                "type": "string",
                                "description": "Bank address"
                              },
                              "email": {
                                "type": "string",
                                "description": "Contact email"
                              },
                              "phoneNumber": {
                                "type": "string",
                                "description": "Contact phone number"
                              },
                              "transferCode": {
                                "type": "string",
                                "description": "Transfer code"
                              },
                              "poBox": {
                                "type": "string",
                                "description": "P.O. Box"
                              },
                              "otp": {
                                "type": "string",
                                "description": "OTP for the transaction"
                              },
                              "bankNotes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "number",
                                      "description": "Type of note: -1 for warning, 1 for info"
                                    },
                                    "msg": {
                                      "type": "string",
                                      "description": "Message content"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "msg"
                                  ]
                                },
                                "description": "Additional bank instructions"
                              }
                            },
                            "required": [
                              "depositType",
                              "iban",
                              "name",
                              "bank",
                              "type",
                              "address",
                              "email",
                              "phoneNumber",
                              "transferCode",
                              "poBox",
                              "otp"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "SPEI"
                                ]
                              },
                              "clabe": {
                                "type": "string",
                                "description": "CLABE number"
                              },
                              "name": {
                                "type": "string",
                                "description": "Name of the account holder"
                              },
                              "bank": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankNotes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "number",
                                      "description": "Type of note: -1 for warning, 1 for info"
                                    },
                                    "msg": {
                                      "type": "string",
                                      "description": "Message content"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "msg"
                                  ]
                                },
                                "description": "Additional bank instructions"
                              }
                            },
                            "required": [
                              "depositType",
                              "clabe",
                              "name",
                              "bank"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "TRY_BANK_TRANSFER"
                                ]
                              },
                              "iban": {
                                "type": "string",
                                "description": "International Bank Account Number"
                              },
                              "name": {
                                "type": "string",
                                "description": "Name of the account holder"
                              },
                              "bank": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "otp": {
                                "type": "string",
                                "description": "OTP for the transaction"
                              },
                              "bankNotes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "number",
                                      "description": "Type of note: -1 for warning, 1 for info"
                                    },
                                    "msg": {
                                      "type": "string",
                                      "description": "Message content"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "msg"
                                  ]
                                },
                                "description": "Additional bank instructions"
                              }
                            },
                            "required": [
                              "depositType",
                              "iban",
                              "name",
                              "bank",
                              "otp"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "IDR_BANK_TRANSFER"
                                ]
                              },
                              "virtualAccount": {
                                "type": "string",
                                "description": "Virtual account number"
                              },
                              "name": {
                                "type": "string",
                                "description": "Name of the account holder"
                              },
                              "bank": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankNotes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "number",
                                      "description": "Type of note: -1 for warning, 1 for info"
                                    },
                                    "msg": {
                                      "type": "string",
                                      "description": "Message content"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "msg"
                                  ]
                                },
                                "description": "Additional bank instructions"
                              }
                            },
                            "required": [
                              "depositType",
                              "virtualAccount",
                              "name",
                              "bank"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "THAI_QR"
                                ]
                              },
                              "qrCode": {
                                "type": "string",
                                "description": "QR code"
                              },
                              "otp": {
                                "type": "string",
                                "description": "OTP for the transaction"
                              },
                              "bankNotes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "number",
                                      "description": "Type of note: -1 for warning, 1 for info"
                                    },
                                    "msg": {
                                      "type": "string",
                                      "description": "Message content"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "msg"
                                  ]
                                },
                                "description": "Additional bank instructions"
                              }
                            },
                            "required": [
                              "depositType",
                              "qrCode",
                              "otp"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "VIET_QR"
                                ]
                              },
                              "qrCode": {
                                "type": "string",
                                "description": "QR code"
                              },
                              "otp": {
                                "type": "string",
                                "description": "OTP for the transaction"
                              },
                              "bankNotes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "number",
                                      "description": "Type of note: -1 for warning, 1 for info"
                                    },
                                    "msg": {
                                      "type": "string",
                                      "description": "Message content"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "msg"
                                  ]
                                },
                                "description": "Additional bank instructions"
                              }
                            },
                            "required": [
                              "depositType",
                              "qrCode",
                              "otp"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "GCASH"
                                ]
                              },
                              "qrCode": {
                                "type": "string",
                                "description": "QR code"
                              },
                              "otp": {
                                "type": "string",
                                "description": "OTP for the transaction"
                              },
                              "bankNotes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "number",
                                      "description": "Type of note: -1 for warning, 1 for info"
                                    },
                                    "msg": {
                                      "type": "string",
                                      "description": "Message content"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "msg"
                                  ]
                                },
                                "description": "Additional bank instructions"
                              }
                            },
                            "required": [
                              "depositType",
                              "qrCode",
                              "otp"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "ARGENTINA_BANK_TRANSFER"
                                ]
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Account number"
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "accountNumber"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "ACH_US"
                                ]
                              },
                              "routingNumber": {
                                "type": "string",
                                "description": "US bank ABA routing number"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "US bank account number"
                              },
                              "beneficiaryName": {
                                "type": "string",
                                "description": "Beneficiary name on the account"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Name of the bank"
                              },
                              "bankAddress": {
                                "type": "string",
                                "description": "Address of the bank"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names (e.g. ACH, Wire)"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount in USD"
                              },
                              "referenceCode": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Reference code to include in the wire/ACH transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "routingNumber",
                              "accountNumber",
                              "beneficiaryName",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "ACH_PULL"
                                ]
                              }
                            },
                            "required": [
                              "depositType"
                            ],
                            "description": "Funds are pulled from the holder's own linked US bank account; no transfer instructions apply"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "LOCALBANK"
                                ],
                                "description": "Deprecated generic local-bank payin type. Superseded by the corridor-specific deposit types (e.g. SEPA, ACH_US, GBP_BANK_TRANSFER, CLABE/SPEI, PIX, ARGENTINA_BANK_TRANSFER, BANK_DEPOSIT_<CC>). Still returned on some corridors and on historical records, so integrators must continue to handle it. Discover the applicable per-currency method via GET /v1/currencies/{currency}/payin-schema.",
                                "deprecated": true
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "GBP_BANK_TRANSFER"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "UK bank account number"
                              },
                              "sortCode": {
                                "type": "string",
                                "description": "UK sort code"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Name of the bank"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names (e.g. Faster Payments, CHAPS, BACS)"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount in GBP"
                              },
                              "referenceCode": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Reference code to include in the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "accountHolder",
                              "accountNumber",
                              "sortCode",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_COL"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_CL"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_BO"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_BR"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_NG"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_KE"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_GH"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_ZA"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_TZ"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_UG"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_RW"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_MW"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_ZM"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_BW"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_CD"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_XOF"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_XAF"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_NG"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_KE"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_GH"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_ZA"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_TZ"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_UG"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_RW"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_MW"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_ZM"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_BW"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_CD"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_XOF"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_XAF"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          }
                        ],
                        "description": "Details of the deposit",
                        "examples": [
                          {
                            "accountHolder": "John Doe",
                            "iban": "DE8937XXXXXXXXXXXX3000",
                            "bic": "COBADEFFXXX",
                            "bankName": "Commerzbank",
                            "bankAddress": "Mainzer Landstrasse 151-153",
                            "bankCity": "Frankfurt",
                            "bankZipcode": "60327",
                            "bankCountry": "DE",
                            "amount": 1000,
                            "referenceCode": "ABC123",
                            "depositType": "SEPA"
                          }
                        ]
                      },
                      "depositInfoPending": {
                        "type": "boolean",
                        "description": "True while the payment instructions are still being prepared. Poll this deposit until it is false (or absent) before showing the instructions to the payer."
                      },
                      "complianceHold": {
                        "type": "object",
                        "properties": {
                          "reason": {
                            "type": "string",
                            "enum": [
                              "screening",
                              "fiat_monitoring"
                            ],
                            "description": "Compliance hold reason"
                          }
                        },
                        "required": [
                          "reason"
                        ],
                        "description": "Present while the inbound transfer funding this deposit is held in provider compliance review. The deposit stays Reviewing (amount 0, never credited) until the hold clears (promote to Received) or the transfer is rejected/returned (terminalize)."
                      }
                    },
                    "required": [
                      "depositId",
                      "createdAt",
                      "expectedAmount",
                      "amount",
                      "currency",
                      "fee",
                      "expectedFee",
                      "feeCurrency",
                      "status",
                      "depositInfo"
                    ],
                    "description": "Deposit Data"
                  },
                  "description": "Response schema for listing deposits"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/deposits\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/deposits\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/deposits\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/deposits/holds": {
      "get": {
        "summary": "List deposit holds",
        "description": "Inbound deposits that are held until their origin is declared (Travel Rule). A held deposit is not credited until the declaration is filed. You are also notified with the `deposit_action_required` webhook.",
        "tags": [
          "Deposits"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "enum": [
                "declaration_required",
                "declaring",
                "declared",
                "released"
              ],
              "description": "`declaration_required`: the deposit is held until you declare who sent it. `declaring`: a declaration is being filed; retry the same answer later if the call did not complete. `declared`: the declaration was filed; the deposit is credited as usual once released. `released`: the deposit is no longer held and no declaration from you is needed."
            },
            "required": false,
            "description": "`declaration_required`: the deposit is held until you declare who sent it. `declaring`: a declaration is being filed; retry the same answer later if the call did not complete. `declared`: the declaration was filed; the deposit is credited as usual once released. `released`: the deposit is no longer held and no declaration from you is needed.",
            "name": "status",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "minLength": 1,
              "description": "Only holds of this account."
            },
            "required": false,
            "description": "Only holds of this account.",
            "name": "accountId",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "Deposit holds of your workspace",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "holds": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "holdId": {
                            "type": "string",
                            "description": "Deposit hold id.",
                            "example": "dhold_3f1c9a7be2d84c01a5f6e9b2"
                          },
                          "accountId": {
                            "type": "string",
                            "description": "Account the deposit belongs to."
                          },
                          "depositId": {
                            "type": "string",
                            "nullable": true,
                            "description": "The deposit the funds were credited to once released; `null` until then."
                          },
                          "reason": {
                            "type": "string",
                            "enum": [
                              "travel_rule_origin"
                            ],
                            "description": "Why the deposit is held."
                          },
                          "status": {
                            "type": "string",
                            "enum": [
                              "declaration_required",
                              "declaring",
                              "declared",
                              "released"
                            ],
                            "description": "`declaration_required`: the deposit is held until you declare who sent it. `declaring`: a declaration is being filed; retry the same answer later if the call did not complete. `declared`: the declaration was filed; the deposit is credited as usual once released. `released`: the deposit is no longer held and no declaration from you is needed."
                          },
                          "amount": {
                            "type": "string",
                            "description": "Amount received, as a decimal string.",
                            "example": "10.00000000"
                          },
                          "currency": {
                            "type": "string",
                            "description": "Currency received.",
                            "example": "USDC"
                          },
                          "network": {
                            "type": "string",
                            "description": "Network the deposit arrived on.",
                            "example": "BASE"
                          },
                          "heldAt": {
                            "type": "string",
                            "nullable": true,
                            "description": "When the deposit was received (ISO 8601), if known."
                          },
                          "createdAt": {
                            "type": "string",
                            "description": "When the hold was recorded (ISO 8601)."
                          },
                          "deadline": {
                            "nullable": true,
                            "description": "Reserved: the time after which the deposit may be returned. Not currently provided."
                          },
                          "declaration": {
                            "type": "object",
                            "nullable": true,
                            "properties": {
                              "ownership": {
                                "type": "string",
                                "enum": [
                                  "own",
                                  "third_party"
                                ]
                              },
                              "thirdParty": {
                                "type": "object",
                                "nullable": true,
                                "properties": {
                                  "name": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 100,
                                    "description": "First name of the person who sent the funds.",
                                    "example": "Daniel"
                                  },
                                  "surname": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 100,
                                    "description": "Surname(s) of the person who sent the funds.",
                                    "example": "García"
                                  }
                                },
                                "required": [
                                  "name",
                                  "surname"
                                ],
                                "additionalProperties": false
                              },
                              "declaredBy": {
                                "type": "string",
                                "enum": [
                                  "holder",
                                  "workspace",
                                  "ops",
                                  "remembered"
                                ],
                                "description": "Who answered: the account holder, your workspace, our operations team on the holder’s behalf, or `remembered` — filed automatically because an earlier answer covered the same sending wallet for this account."
                              },
                              "declaredAt": {
                                "type": "string",
                                "description": "ISO 8601."
                              }
                            },
                            "required": [
                              "ownership",
                              "thirdParty",
                              "declaredBy",
                              "declaredAt"
                            ],
                            "description": "The declaration filed, once there is one."
                          }
                        },
                        "required": [
                          "holdId",
                          "accountId",
                          "depositId",
                          "reason",
                          "status",
                          "amount",
                          "currency",
                          "network",
                          "heldAt",
                          "createdAt",
                          "deadline",
                          "declaration"
                        ],
                        "additionalProperties": false,
                        "description": "An inbound deposit that is held until its origin is declared."
                      }
                    }
                  },
                  "required": [
                    "holds"
                  ],
                  "additionalProperties": false,
                  "description": "Deposit holds of your workspace (at most 100)."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/deposits/holds\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/deposits/holds\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/deposits/holds\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/deposits/holds/{holdId}": {
      "get": {
        "summary": "Get a deposit hold",
        "description": "One held inbound deposit and, once filed, its origin declaration.",
        "tags": [
          "Deposits"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 1,
              "description": "Deposit hold id, as returned by the list endpoint or the `deposit_action_required` webhook.",
              "example": "dhold_3f1c9a7be2d84c01a5f6e9b2"
            },
            "required": true,
            "description": "Deposit hold id, as returned by the list endpoint or the `deposit_action_required` webhook.",
            "name": "holdId",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "The deposit hold",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "holdId": {
                      "type": "string",
                      "description": "Deposit hold id.",
                      "example": "dhold_3f1c9a7be2d84c01a5f6e9b2"
                    },
                    "accountId": {
                      "type": "string",
                      "description": "Account the deposit belongs to."
                    },
                    "depositId": {
                      "type": "string",
                      "nullable": true,
                      "description": "The deposit the funds were credited to once released; `null` until then."
                    },
                    "reason": {
                      "type": "string",
                      "enum": [
                        "travel_rule_origin"
                      ],
                      "description": "Why the deposit is held."
                    },
                    "status": {
                      "type": "string",
                      "enum": [
                        "declaration_required",
                        "declaring",
                        "declared",
                        "released"
                      ],
                      "description": "`declaration_required`: the deposit is held until you declare who sent it. `declaring`: a declaration is being filed; retry the same answer later if the call did not complete. `declared`: the declaration was filed; the deposit is credited as usual once released. `released`: the deposit is no longer held and no declaration from you is needed."
                    },
                    "amount": {
                      "type": "string",
                      "description": "Amount received, as a decimal string.",
                      "example": "10.00000000"
                    },
                    "currency": {
                      "type": "string",
                      "description": "Currency received.",
                      "example": "USDC"
                    },
                    "network": {
                      "type": "string",
                      "description": "Network the deposit arrived on.",
                      "example": "BASE"
                    },
                    "heldAt": {
                      "type": "string",
                      "nullable": true,
                      "description": "When the deposit was received (ISO 8601), if known."
                    },
                    "createdAt": {
                      "type": "string",
                      "description": "When the hold was recorded (ISO 8601)."
                    },
                    "deadline": {
                      "nullable": true,
                      "description": "Reserved: the time after which the deposit may be returned. Not currently provided."
                    },
                    "declaration": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "ownership": {
                          "type": "string",
                          "enum": [
                            "own",
                            "third_party"
                          ]
                        },
                        "thirdParty": {
                          "type": "object",
                          "nullable": true,
                          "properties": {
                            "name": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 100,
                              "description": "First name of the person who sent the funds.",
                              "example": "Daniel"
                            },
                            "surname": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 100,
                              "description": "Surname(s) of the person who sent the funds.",
                              "example": "García"
                            }
                          },
                          "required": [
                            "name",
                            "surname"
                          ],
                          "additionalProperties": false
                        },
                        "declaredBy": {
                          "type": "string",
                          "enum": [
                            "holder",
                            "workspace",
                            "ops",
                            "remembered"
                          ],
                          "description": "Who answered: the account holder, your workspace, our operations team on the holder’s behalf, or `remembered` — filed automatically because an earlier answer covered the same sending wallet for this account."
                        },
                        "declaredAt": {
                          "type": "string",
                          "description": "ISO 8601."
                        }
                      },
                      "required": [
                        "ownership",
                        "thirdParty",
                        "declaredBy",
                        "declaredAt"
                      ],
                      "description": "The declaration filed, once there is one."
                    }
                  },
                  "required": [
                    "holdId",
                    "accountId",
                    "depositId",
                    "reason",
                    "status",
                    "amount",
                    "currency",
                    "network",
                    "heldAt",
                    "createdAt",
                    "deadline",
                    "declaration"
                  ],
                  "additionalProperties": false,
                  "description": "An inbound deposit that is held until its origin is declared."
                }
              }
            }
          },
          "404": {
            "description": "Deposit hold not found (or not in your workspace)",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/deposits/holds/YOUR_HOLDID\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/deposits/holds/YOUR_HOLDID\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/deposits/holds/YOUR_HOLDID\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/deposits/holds/{holdId}/travel-rule": {
      "post": {
        "summary": "Declare the origin of a held deposit",
        "description": "Declares who owns the wallet the deposit came from: `own` (the account holder) or `third_party` with the sender’s `name`, `surname` and postal `address` (`street`, `city`, `zip`, `countryCode` as ISO 3166-1 alpha-2) — all required. Idempotent: repeating the same answer returns the current state; a different answer after one was filed is refused (409). Refused with 409 when the deposit is no longer held or a declaration is already being filed (retry the same answer later).",
        "tags": [
          "Deposits"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 1,
              "description": "Deposit hold id, as returned by the list endpoint or the `deposit_action_required` webhook.",
              "example": "dhold_3f1c9a7be2d84c01a5f6e9b2"
            },
            "required": true,
            "description": "Deposit hold id, as returned by the list endpoint or the `deposit_action_required` webhook.",
            "name": "holdId",
            "in": "path"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "oneOf": [
                  {
                    "type": "object",
                    "properties": {
                      "ownership": {
                        "type": "string",
                        "enum": [
                          "own"
                        ],
                        "description": "The sending wallet belongs to the account holder."
                      }
                    },
                    "required": [
                      "ownership"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "object",
                    "properties": {
                      "ownership": {
                        "type": "string",
                        "enum": [
                          "third_party"
                        ],
                        "description": "The funds were sent by someone else."
                      },
                      "thirdParty": {
                        "type": "object",
                        "properties": {
                          "name": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "First name of the person who sent the funds.",
                            "example": "Daniel"
                          },
                          "surname": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "Surname(s) of the person who sent the funds.",
                            "example": "García"
                          },
                          "address": {
                            "type": "object",
                            "properties": {
                              "street": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 200,
                                "description": "Street and number of the sender’s address.",
                                "example": "Calle Mayor 1"
                              },
                              "city": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 200,
                                "description": "City of the sender’s address.",
                                "example": "Madrid"
                              },
                              "zip": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 200,
                                "description": "Postal code of the sender’s address.",
                                "example": "28013"
                              },
                              "countryCode": {
                                "type": "string",
                                "pattern": "^[A-Z]{2}$",
                                "description": "Country of the sender’s address (ISO 3166-1 alpha-2, e.g. `ES`).",
                                "example": "ES"
                              }
                            },
                            "required": [
                              "street",
                              "city",
                              "zip",
                              "countryCode"
                            ],
                            "additionalProperties": false,
                            "description": "Postal address of the person who sent the funds."
                          }
                        },
                        "required": [
                          "name",
                          "surname",
                          "address"
                        ],
                        "additionalProperties": false
                      }
                    },
                    "required": [
                      "ownership",
                      "thirdParty"
                    ],
                    "additionalProperties": false
                  }
                ],
                "description": "Who owns the wallet the deposit came from (Travel Rule origin).",
                "example": {
                  "ownership": "own"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "The deposit hold with the filed declaration",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "holdId": {
                      "type": "string",
                      "description": "Deposit hold id.",
                      "example": "dhold_3f1c9a7be2d84c01a5f6e9b2"
                    },
                    "accountId": {
                      "type": "string",
                      "description": "Account the deposit belongs to."
                    },
                    "depositId": {
                      "type": "string",
                      "nullable": true,
                      "description": "The deposit the funds were credited to once released; `null` until then."
                    },
                    "reason": {
                      "type": "string",
                      "enum": [
                        "travel_rule_origin"
                      ],
                      "description": "Why the deposit is held."
                    },
                    "status": {
                      "type": "string",
                      "enum": [
                        "declaration_required",
                        "declaring",
                        "declared",
                        "released"
                      ],
                      "description": "`declaration_required`: the deposit is held until you declare who sent it. `declaring`: a declaration is being filed; retry the same answer later if the call did not complete. `declared`: the declaration was filed; the deposit is credited as usual once released. `released`: the deposit is no longer held and no declaration from you is needed."
                    },
                    "amount": {
                      "type": "string",
                      "description": "Amount received, as a decimal string.",
                      "example": "10.00000000"
                    },
                    "currency": {
                      "type": "string",
                      "description": "Currency received.",
                      "example": "USDC"
                    },
                    "network": {
                      "type": "string",
                      "description": "Network the deposit arrived on.",
                      "example": "BASE"
                    },
                    "heldAt": {
                      "type": "string",
                      "nullable": true,
                      "description": "When the deposit was received (ISO 8601), if known."
                    },
                    "createdAt": {
                      "type": "string",
                      "description": "When the hold was recorded (ISO 8601)."
                    },
                    "deadline": {
                      "nullable": true,
                      "description": "Reserved: the time after which the deposit may be returned. Not currently provided."
                    },
                    "declaration": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "ownership": {
                          "type": "string",
                          "enum": [
                            "own",
                            "third_party"
                          ]
                        },
                        "thirdParty": {
                          "type": "object",
                          "nullable": true,
                          "properties": {
                            "name": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 100,
                              "description": "First name of the person who sent the funds.",
                              "example": "Daniel"
                            },
                            "surname": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 100,
                              "description": "Surname(s) of the person who sent the funds.",
                              "example": "García"
                            }
                          },
                          "required": [
                            "name",
                            "surname"
                          ],
                          "additionalProperties": false
                        },
                        "declaredBy": {
                          "type": "string",
                          "enum": [
                            "holder",
                            "workspace",
                            "ops",
                            "remembered"
                          ],
                          "description": "Who answered: the account holder, your workspace, our operations team on the holder’s behalf, or `remembered` — filed automatically because an earlier answer covered the same sending wallet for this account."
                        },
                        "declaredAt": {
                          "type": "string",
                          "description": "ISO 8601."
                        }
                      },
                      "required": [
                        "ownership",
                        "thirdParty",
                        "declaredBy",
                        "declaredAt"
                      ],
                      "description": "The declaration filed, once there is one."
                    }
                  },
                  "required": [
                    "holdId",
                    "accountId",
                    "depositId",
                    "reason",
                    "status",
                    "amount",
                    "currency",
                    "network",
                    "heldAt",
                    "createdAt",
                    "deadline",
                    "declaration"
                  ],
                  "additionalProperties": false,
                  "description": "An inbound deposit that is held until its origin is declared."
                }
              }
            }
          },
          "400": {
            "description": "Invalid answer: a `third_party` answer without name, surname or a complete address. The error names each missing or invalid field.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "404": {
            "description": "Deposit hold not found (or not in your workspace)",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "409": {
            "description": "The deposit is no longer held, already carries a different declaration, or one is being filed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/deposits/holds/YOUR_HOLDID/travel-rule\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"ownership\": \"own\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api.virtuabroker.com/v1/deposits/holds/YOUR_HOLDID/travel-rule\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"ownership\": \"own\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api.virtuabroker.com/v1/deposits/holds/YOUR_HOLDID/travel-rule\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"ownership\": \"own\"\n}'"
          }
        ]
      }
    },
    "/v1/deposits/{depositId}": {
      "get": {
        "summary": "Get deposit details",
        "description": "This endpoint retrieves details of a specific deposit.",
        "tags": [
          "Deposits"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 12,
              "maxLength": 12,
              "pattern": "^[A-Z0-9]{12}$",
              "description": "ID of the deposit",
              "examples": [
                "01CLFXMT67II",
                "2R7E5Y5KFXP8",
                "4FWWRE3Y2URM"
              ]
            },
            "required": true,
            "description": "ID of the deposit",
            "name": "depositId",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful retrieval of deposit details",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "depositId": {
                      "type": "string",
                      "minLength": 1,
                      "description": "ID of the deposit. Normally a 12-character internal id; deposits created before mid-2026 may carry a longer legacy id. Treat it as an opaque string."
                    },
                    "externalReference": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 128,
                      "description": "Your own reference for this deposit. Stored as-is and returned on create, detail and list, so you can look the deposit up by it after a network timeout instead of retrying blind. Not interpreted by VirtuaBroker and not shown to the payer — for the payer's transfer reference use depositInfo.referenceCode.",
                      "examples": [
                        "partner-ref-0001",
                        "inv_2026_00417"
                      ]
                    },
                    "userData": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "userType": {
                              "type": "string",
                              "enum": [
                                "individual"
                              ]
                            },
                            "firstName": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 50,
                              "description": "First name of the user making the deposit (or representative for business)",
                              "examples": [
                                "John",
                                "Alice",
                                "Bob"
                              ]
                            },
                            "lastName": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 100,
                              "description": "Last name of the user making the deposit (or representative for business)",
                              "examples": [
                                "Doe",
                                "Smith",
                                "Johnson"
                              ]
                            },
                            "userEmail": {
                              "type": "string",
                              "maxLength": 254,
                              "format": "email",
                              "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                              "description": "Email of the user making the deposit",
                              "examples": [
                                "user@virtuabroker.com",
                                "john.doe@example.com",
                                "alice@example.com"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "maxLength": 150,
                              "description": "Address of the user making the deposit",
                              "examples": [
                                "123 Main St, Anytown, ES",
                                "456 Elm St, Anytown, ES",
                                "789 Oak St, Anytown, ES"
                              ]
                            },
                            "taxDocumentType": {
                              "type": "string",
                              "maxLength": 50,
                              "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                              "examples": [
                                "CC",
                                "NIT",
                                "CE",
                                "NIF",
                                "Other"
                              ]
                            },
                            "taxId": {
                              "type": "string",
                              "maxLength": 30,
                              "description": "Tax ID of the user making the deposit",
                              "examples": [
                                "123-45-6789",
                                "987-65-4321",
                                "111-22-3333"
                              ]
                            },
                            "country": {
                              "type": "string",
                              "enum": [
                                "US",
                                "CA",
                                "GB",
                                "DE",
                                "FR",
                                "AU",
                                "JP",
                                "KR",
                                "SE",
                                "NO",
                                "DK",
                                "FI",
                                "NL",
                                "BE",
                                "CH",
                                "AT",
                                "NZ",
                                "SG",
                                "IE",
                                "LU",
                                "PT",
                                "ES",
                                "IT",
                                "GR",
                                "CZ",
                                "PL",
                                "HU",
                                "SK",
                                "SI",
                                "EE",
                                "LT",
                                "LV",
                                "IS",
                                "MT",
                                "CY",
                                "HR",
                                "RO",
                                "BG",
                                "BR",
                                "AR",
                                "CL",
                                "MX",
                                "CO",
                                "PE",
                                "PA",
                                "UY",
                                "BO",
                                "ZA",
                                "NG",
                                "KE",
                                "GH",
                                "TZ",
                                "UG",
                                "RW",
                                "MW",
                                "ZM",
                                "BW",
                                "CD",
                                "CI",
                                "CM",
                                "IL",
                                "AE",
                                "QA",
                                "SA",
                                "OM",
                                "KW",
                                "BH",
                                "MY",
                                "PH",
                                "TH",
                                "VN",
                                "ID",
                                "IN",
                                "LK",
                                "NP",
                                "BD",
                                "PK",
                                "EG",
                                "MA",
                                "DZ",
                                "TN",
                                "JO",
                                "LB",
                                "TR",
                                "KH",
                                "MM",
                                "LA",
                                "EN",
                                "BT",
                                "VE",
                                "TW",
                                "HK",
                                "CN"
                              ],
                              "description": "Country code of the user making the deposit",
                              "examples": [
                                "ES",
                                "US",
                                "GB"
                              ]
                            },
                            "state": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 100,
                              "description": "State of the user making the deposit",
                              "examples": [
                                "Madrid",
                                "New York",
                                "London"
                              ]
                            },
                            "postalCode": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 30,
                              "description": "Postal code of the user making the deposit",
                              "examples": [
                                "12345",
                                "67890",
                                "abcde"
                              ]
                            },
                            "city": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 100,
                              "description": "City of the user making the deposit",
                              "examples": [
                                "Madrid",
                                "New York",
                                "London"
                              ]
                            },
                            "dob": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 30,
                              "description": "Date of birth of the user making the deposit",
                              "examples": [
                                "1990-01-01",
                                "1995-05-15",
                                "1988-12-31"
                              ]
                            },
                            "phoneNumber": {
                              "type": "string",
                              "maxLength": 30,
                              "description": "Phone number of the user making the deposit",
                              "examples": [
                                "+447700900123",
                                "+447700900456",
                                "+447700900789"
                              ]
                            },
                            "kycId": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 300,
                              "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                              "examples": [
                                "kyc-12345",
                                "kyc-67890",
                                "kyc-abcde"
                              ]
                            },
                            "activity": {
                              "type": "string",
                              "description": "Activity of the user making the deposit",
                              "examples": [
                                "worker",
                                "business",
                                "student"
                              ]
                            }
                          },
                          "required": [
                            "userType",
                            "firstName",
                            "userEmail",
                            "country"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "userType": {
                              "type": "string",
                              "enum": [
                                "business"
                              ]
                            },
                            "businessName": {
                              "type": "string",
                              "maxLength": 150,
                              "description": "Business name (required when userType is business)",
                              "examples": [
                                "Acme Corp",
                                "Tech Solutions Inc",
                                "Global Services Ltd"
                              ]
                            },
                            "firstName": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 50,
                              "description": "First name of the user making the deposit (or representative for business)",
                              "examples": [
                                "John",
                                "Alice",
                                "Bob"
                              ]
                            },
                            "userEmail": {
                              "type": "string",
                              "maxLength": 254,
                              "format": "email",
                              "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                              "description": "Email of the user making the deposit",
                              "examples": [
                                "user@virtuabroker.com",
                                "john.doe@example.com",
                                "alice@example.com"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "maxLength": 150,
                              "description": "Address of the user making the deposit",
                              "examples": [
                                "123 Main St, Anytown, ES",
                                "456 Elm St, Anytown, ES",
                                "789 Oak St, Anytown, ES"
                              ]
                            },
                            "taxDocumentType": {
                              "type": "string",
                              "maxLength": 50,
                              "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                              "examples": [
                                "CC",
                                "NIT",
                                "CE",
                                "NIF",
                                "Other"
                              ]
                            },
                            "taxId": {
                              "type": "string",
                              "maxLength": 30,
                              "description": "Tax ID of the user making the deposit",
                              "examples": [
                                "123-45-6789",
                                "987-65-4321",
                                "111-22-3333"
                              ]
                            },
                            "country": {
                              "type": "string",
                              "enum": [
                                "US",
                                "CA",
                                "GB",
                                "DE",
                                "FR",
                                "AU",
                                "JP",
                                "KR",
                                "SE",
                                "NO",
                                "DK",
                                "FI",
                                "NL",
                                "BE",
                                "CH",
                                "AT",
                                "NZ",
                                "SG",
                                "IE",
                                "LU",
                                "PT",
                                "ES",
                                "IT",
                                "GR",
                                "CZ",
                                "PL",
                                "HU",
                                "SK",
                                "SI",
                                "EE",
                                "LT",
                                "LV",
                                "IS",
                                "MT",
                                "CY",
                                "HR",
                                "RO",
                                "BG",
                                "BR",
                                "AR",
                                "CL",
                                "MX",
                                "CO",
                                "PE",
                                "PA",
                                "UY",
                                "BO",
                                "ZA",
                                "NG",
                                "KE",
                                "GH",
                                "TZ",
                                "UG",
                                "RW",
                                "MW",
                                "ZM",
                                "BW",
                                "CD",
                                "CI",
                                "CM",
                                "IL",
                                "AE",
                                "QA",
                                "SA",
                                "OM",
                                "KW",
                                "BH",
                                "MY",
                                "PH",
                                "TH",
                                "VN",
                                "ID",
                                "IN",
                                "LK",
                                "NP",
                                "BD",
                                "PK",
                                "EG",
                                "MA",
                                "DZ",
                                "TN",
                                "JO",
                                "LB",
                                "TR",
                                "KH",
                                "MM",
                                "LA",
                                "EN",
                                "BT",
                                "VE",
                                "TW",
                                "HK",
                                "CN"
                              ],
                              "description": "Country code of the user making the deposit",
                              "examples": [
                                "ES",
                                "US",
                                "GB"
                              ]
                            },
                            "state": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 100,
                              "description": "State of the user making the deposit",
                              "examples": [
                                "Madrid",
                                "New York",
                                "London"
                              ]
                            },
                            "postalCode": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 30,
                              "description": "Postal code of the user making the deposit",
                              "examples": [
                                "12345",
                                "67890",
                                "abcde"
                              ]
                            },
                            "city": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 100,
                              "description": "City of the user making the deposit",
                              "examples": [
                                "Madrid",
                                "New York",
                                "London"
                              ]
                            },
                            "dob": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 30,
                              "description": "Date of birth of the user making the deposit",
                              "examples": [
                                "1990-01-01",
                                "1995-05-15",
                                "1988-12-31"
                              ]
                            },
                            "phoneNumber": {
                              "type": "string",
                              "maxLength": 30,
                              "description": "Phone number of the user making the deposit",
                              "examples": [
                                "+447700900123",
                                "+447700900456",
                                "+447700900789"
                              ]
                            },
                            "kycId": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 300,
                              "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                              "examples": [
                                "kyc-12345",
                                "kyc-67890",
                                "kyc-abcde"
                              ]
                            },
                            "activity": {
                              "type": "string",
                              "description": "Activity of the user making the deposit",
                              "examples": [
                                "worker",
                                "business",
                                "student"
                              ]
                            }
                          },
                          "required": [
                            "userType",
                            "businessName",
                            "firstName",
                            "userEmail",
                            "country"
                          ]
                        }
                      ],
                      "description": "User data of the person/company making the deposit",
                      "examples": [
                        {
                          "userType": "individual",
                          "firstName": "John",
                          "lastName": "Doe",
                          "userEmail": "user@virtuabroker.com",
                          "address": "123 Main St, Anytown, ES",
                          "taxId": "123-45-6789",
                          "country": "ES"
                        },
                        {
                          "userType": "individual",
                          "firstName": "Alice",
                          "lastName": "Smith",
                          "userEmail": "alice@example.com",
                          "address": "456 Elm St, Anytown, ES",
                          "taxId": "987-65-4321",
                          "country": "ES"
                        }
                      ]
                    },
                    "createdAt": {
                      "type": "number",
                      "description": "Creation time of the deposit",
                      "examples": [
                        1723027132,
                        1723027133,
                        1723027134
                      ]
                    },
                    "rail": {
                      "type": "string",
                      "enum": [
                        "BALANCE",
                        "SEPA",
                        "BTC",
                        "ETH",
                        "MATIC",
                        "POLYGON",
                        "CELO",
                        "TRON",
                        "SOLANA",
                        "ARBITRUM",
                        "OPTIMISM",
                        "AVALANCHE",
                        "BSC",
                        "BASE",
                        "XRP",
                        "PIX_BR",
                        "UPI",
                        "IMPS",
                        "TRY_BANK_TRANSFER",
                        "AED_BANK_TRANSFER",
                        "SPEI",
                        "IDR_BANK_TRANSFER",
                        "CREDIT_CARD",
                        "THAI_QR",
                        "VIET_QR",
                        "GCASH",
                        "ARGENTINA_BANK_TRANSFER",
                        "PSE",
                        "CLABE",
                        "PIX",
                        "BANK_DEPOSIT_COL",
                        "BANK_DEPOSIT_AR",
                        "BANK_DEPOSIT_CL",
                        "BANK_DEPOSIT_PE",
                        "BANK_DEPOSIT_BO",
                        "BANK_DEPOSIT_BR",
                        "BANK_DEPOSIT_NG",
                        "BANK_DEPOSIT_KE",
                        "BANK_DEPOSIT_GH",
                        "BANK_DEPOSIT_ZA",
                        "BANK_DEPOSIT_TZ",
                        "BANK_DEPOSIT_UG",
                        "BANK_DEPOSIT_RW",
                        "BANK_DEPOSIT_MW",
                        "BANK_DEPOSIT_ZM",
                        "BANK_DEPOSIT_BW",
                        "BANK_DEPOSIT_CD",
                        "BANK_DEPOSIT_XOF",
                        "BANK_DEPOSIT_XAF",
                        "MOBILE_MONEY_NG",
                        "MOBILE_MONEY_KE",
                        "MOBILE_MONEY_GH",
                        "MOBILE_MONEY_ZA",
                        "MOBILE_MONEY_TZ",
                        "MOBILE_MONEY_UG",
                        "MOBILE_MONEY_RW",
                        "MOBILE_MONEY_MW",
                        "MOBILE_MONEY_ZM",
                        "MOBILE_MONEY_BW",
                        "MOBILE_MONEY_CD",
                        "MOBILE_MONEY_XOF",
                        "MOBILE_MONEY_XAF",
                        "ACH_US",
                        "GBP_BANK_TRANSFER"
                      ],
                      "description": "Rail of the deposit"
                    },
                    "receivedAt": {
                      "type": "number",
                      "description": "Unix ms timestamp of when the funds for this deposit ARRIVED — recorded when the incoming payment is matched to the deposit, which is before it is credited. Present whenever funds have arrived, including a deposit whose funds are still held in review; omitted entirely when no funds ever arrived, so a never-funded or cancelled deposit has no value here and its presence is a reliable settlement signal for reconciliation. Identical on GET /v1/deposits and GET /v1/deposits/{depositId}. Note that the deposit object embedded in order and operation responses does not yet apply this rule — it returns the stored value. Not the creation time — use createdAt for that.",
                      "examples": [
                        1723027132000,
                        1723027133000,
                        1723027134000
                      ]
                    },
                    "expectedAmount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Amount expected of the deposit",
                      "examples": [
                        1000,
                        2000,
                        3000
                      ]
                    },
                    "amount": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Amount received of the deposit",
                      "examples": [
                        1000,
                        2000,
                        3000
                      ]
                    },
                    "currency": {
                      "anyOf": [
                        {
                          "type": "string",
                          "enum": [
                            "EUR",
                            "USD",
                            "GBP",
                            "BRL",
                            "MXN",
                            "ARS",
                            "COP",
                            "PEN",
                            "NGN",
                            "KES",
                            "TZS",
                            "UGX",
                            "RWF",
                            "MWK",
                            "ZMW",
                            "XOF",
                            "XAF",
                            "BWP"
                          ]
                        },
                        {
                          "type": "string",
                          "enum": [
                            "USDC",
                            "USDT",
                            "CUSD",
                            "BTC",
                            "ETH",
                            "POL",
                            "SOL",
                            "TRX",
                            "AVAX",
                            "XRP",
                            "BNB"
                          ]
                        }
                      ],
                      "description": "Currency of the deposit",
                      "examples": [
                        "EUR",
                        "BRL"
                      ]
                    },
                    "fee": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Fee for the deposit. This value is written once the deposit has been executed. Meanwhile it will appear 0.",
                      "example": 10
                    },
                    "expectedFee": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Fee for the deposit. This value is correlated with the expected amount for the deposit.",
                      "examples": [
                        10,
                        20,
                        30
                      ]
                    },
                    "feeCurrency": {
                      "anyOf": [
                        {
                          "type": "string",
                          "enum": [
                            "EUR",
                            "USD",
                            "GBP",
                            "BRL",
                            "MXN",
                            "ARS",
                            "COP",
                            "PEN",
                            "NGN",
                            "KES",
                            "TZS",
                            "UGX",
                            "RWF",
                            "MWK",
                            "ZMW",
                            "XOF",
                            "XAF",
                            "BWP"
                          ]
                        },
                        {
                          "type": "string",
                          "enum": [
                            "USDC",
                            "USDT",
                            "CUSD",
                            "BTC",
                            "ETH",
                            "POL",
                            "SOL",
                            "TRX",
                            "AVAX",
                            "XRP",
                            "BNB"
                          ]
                        }
                      ],
                      "description": "Currency of the fee",
                      "examples": [
                        "EUR",
                        "BRL"
                      ]
                    },
                    "status": {
                      "anyOf": [
                        {
                          "type": "string",
                          "enum": [
                            "Pending",
                            "Processing",
                            "Success",
                            "Failed",
                            "Canceled",
                            "Reviewing"
                          ],
                          "description": "Common status values that are shared across all operation types",
                          "examples": [
                            "Pending",
                            "Processing",
                            "Success",
                            "Failed",
                            "Canceled",
                            "Reviewing"
                          ]
                        },
                        {
                          "type": "string",
                          "enum": [
                            "PendingCancel",
                            "Received"
                          ]
                        }
                      ],
                      "description": "Status of the deposit",
                      "examples": [
                        "Pending",
                        "Success",
                        "Failed",
                        "Received",
                        "PendingCancel"
                      ]
                    },
                    "depositInfo": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "accountHolder": {
                              "type": "string",
                              "description": "Name of the account holder",
                              "example": "John Doe"
                            },
                            "iban": {
                              "type": "string",
                              "description": "SEPA Bank Account Number",
                              "example": "DE8937XXXXXXXXXXXX3000"
                            },
                            "bic": {
                              "type": "string",
                              "description": "Bank BIC/SWIFT code",
                              "example": "DEUTDEFF"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Name of the bank",
                              "example": "Deutsche Bank"
                            },
                            "bankAddress": {
                              "type": "string",
                              "description": "Address of the bank",
                              "example": "Taunusanlage 12"
                            },
                            "bankCity": {
                              "type": "string",
                              "description": "City of the bank",
                              "example": "Frankfurt am Main"
                            },
                            "bankZipcode": {
                              "type": "string",
                              "description": "Zipcode of the bank",
                              "example": "60325"
                            },
                            "bankCountry": {
                              "type": "string",
                              "enum": [
                                "US",
                                "CA",
                                "GB",
                                "DE",
                                "FR",
                                "AU",
                                "JP",
                                "KR",
                                "SE",
                                "NO",
                                "DK",
                                "FI",
                                "NL",
                                "BE",
                                "CH",
                                "AT",
                                "NZ",
                                "SG",
                                "IE",
                                "LU",
                                "PT",
                                "ES",
                                "IT",
                                "GR",
                                "CZ",
                                "PL",
                                "HU",
                                "SK",
                                "SI",
                                "EE",
                                "LT",
                                "LV",
                                "IS",
                                "MT",
                                "CY",
                                "HR",
                                "RO",
                                "BG",
                                "BR",
                                "AR",
                                "CL",
                                "MX",
                                "CO",
                                "PE",
                                "PA",
                                "UY",
                                "BO",
                                "ZA",
                                "NG",
                                "KE",
                                "GH",
                                "TZ",
                                "UG",
                                "RW",
                                "MW",
                                "ZM",
                                "BW",
                                "CD",
                                "CI",
                                "CM",
                                "IL",
                                "AE",
                                "QA",
                                "SA",
                                "OM",
                                "KW",
                                "BH",
                                "MY",
                                "PH",
                                "TH",
                                "VN",
                                "ID",
                                "IN",
                                "LK",
                                "NP",
                                "BD",
                                "PK",
                                "EG",
                                "MA",
                                "DZ",
                                "TN",
                                "JO",
                                "LB",
                                "TR",
                                "KH",
                                "MM",
                                "LA",
                                "EN",
                                "BT",
                                "VE",
                                "TW",
                                "HK",
                                "CN"
                              ],
                              "description": "Country of the bank",
                              "example": "DE"
                            },
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "SEPA"
                              ]
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount. It can be 0 for open-amount bank transfers where the sender chooses the final amount from their bank.",
                              "example": 1000
                            },
                            "referenceCode": {
                              "type": "string",
                              "minLength": 1,
                              "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order. The user must include this code when making the deposit to ensure accurate processing. In cases where the reference code is incorrect or missing, we manually match orders based on the sender's name and other available details. In case the deposit is not matched, we will mark the order as Reviewing and the system will require manual attention.",
                              "example": "REF123456"
                            },
                            "extraDepositMethods": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "methodType": {
                                    "type": "string",
                                    "enum": [
                                      "HOSTED_CHECKOUT"
                                    ],
                                    "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                                  },
                                  "url": {
                                    "type": "string",
                                    "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                                    "example": "https://checkout.example.com/pay/abc123"
                                  },
                                  "callbackUrl": {
                                    "type": "string",
                                    "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Payment reference for this method (equals the deposit/order reference)"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                                  },
                                  "currency": {
                                    "type": "string",
                                    "description": "Currency of this method"
                                  },
                                  "expiresAt": {
                                    "type": "number",
                                    "description": "Unix ms after which `url` is no longer valid, when known"
                                  }
                                },
                                "required": [
                                  "methodType",
                                  "url"
                                ],
                                "description": "An additional, optional way to pay this deposit"
                              },
                              "description": "Additional, optional ways to pay this same deposit (e.g. a hosted card page). The bank details above remain the primary method; ignore this field if you only support bank transfer."
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ],
                          "description": "Detailed information about a bank deposit, including the amount and a unique reference code for identification."
                        },
                        {
                          "type": "object",
                          "properties": {
                            "address": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Crypto wallet address",
                              "example": "0x1A2b3C4d5E6f7890AbCdEf1234567890AbCdEf12"
                            },
                            "network": {
                              "type": "string",
                              "enum": [
                                "MATIC",
                                "ETH",
                                "CELO",
                                "TRON",
                                "BTC",
                                "SOLANA",
                                "XRP",
                                "CARDANO",
                                "BSC",
                                "ARBITRUM",
                                "OPTIMISM",
                                "AVALANCHE",
                                "BASE"
                              ],
                              "description": "Network for the deposit for crypto deposits",
                              "examples": [
                                "ETH",
                                "MATIC",
                                "CELO"
                              ]
                            },
                            "memo": {
                              "type": "string",
                              "description": "Optional memo for the transaction",
                              "example": "Payment for services"
                            },
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "CRYPTO"
                              ]
                            },
                            "qrCode": {
                              "type": "string",
                              "description": "Base64-encoded QR image for the deposit address",
                              "example": "iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAIAAADTED8xAAABpklEQVR42u3BAQ0AAADCoPdPbQ8HFAAAAAAAAAAAAAAAAAA..."
                            },
                            "qrCodeUrl": {
                              "type": "string",
                              "format": "uri",
                              "description": "7-day signed GCS URL of the QR code PNG"
                            },
                            "qrCodeExpiresAt": {
                              "type": "number",
                              "description": "Unix timestamp (ms) when qrCodeUrl expires"
                            },
                            "receivingAddress": {
                              "type": "string",
                              "description": "The wallet address where funds should be sent",
                              "example": "0xAbCdEf0123456789AbCdEf0123456789AbCdEf01"
                            },
                            "tokenContract": {
                              "type": "string",
                              "description": "The ERC20 token contract address",
                              "example": "0x765DE816845861e75A25fCA122bb6898B8B1282a"
                            },
                            "decimals": {
                              "type": "number",
                              "description": "Token decimals (default 18)",
                              "example": 18
                            }
                          },
                          "required": [
                            "address",
                            "network",
                            "depositType"
                          ],
                          "description": "Crypto Deposit Information"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "base64QRCode": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Base64 encoded QR code",
                              "example": "base64QRCode"
                            },
                            "qrCodeString": {
                              "type": "string",
                              "minLength": 1,
                              "description": "The Pix copy-and-paste code (BR Code payload) the payer pastes into their bank app. Pass it through unchanged — it carries its own checksum.",
                              "example": "qrCodeString"
                            },
                            "referenceCode": {
                              "type": "string",
                              "minLength": 1,
                              "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order",
                              "example": "REF123456"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "exclusiveMinimum": true,
                              "description": "The monetary value to be deposited into the bank. This amount should be positive and accurately reflect the intended deposit.",
                              "example": 1000
                            },
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "PIX"
                              ]
                            }
                          },
                          "required": [
                            "base64QRCode",
                            "qrCodeString",
                            "referenceCode",
                            "amount",
                            "depositType"
                          ],
                          "description": "Pix Deposit Information"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "CREDIT_CARD"
                              ]
                            }
                          },
                          "required": [
                            "depositType"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "bankName": {
                              "type": "string",
                              "description": "Name of the bank (present when the rail provides it)"
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Name of the account holder (present when the rail provides it)"
                            },
                            "clabe": {
                              "type": "string",
                              "description": "CLABE number"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Bank account number (e.g. from the BANK_TRANSFER payment method)"
                            },
                            "reference": {
                              "type": "string",
                              "description": "Payment reference (e.g. from the BANK_TRANSFER payment method)"
                            },
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "CLABE"
                              ],
                              "description": "Type of the deposit"
                            }
                          },
                          "required": [
                            "clabe",
                            "depositType"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "url": {
                              "type": "string",
                              "description": "URL of the PSE payment"
                            },
                            "amountPrefilled": {
                              "type": "boolean",
                              "description": "Whether the payment page already carries the amount. When false or absent, the payer must enter it."
                            },
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "PSE"
                              ],
                              "description": "Type of the deposit"
                            }
                          },
                          "required": [
                            "url",
                            "depositType"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BALANCE"
                              ]
                            }
                          },
                          "required": [
                            "depositType"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "PENDING"
                              ]
                            },
                            "currency": {
                              "type": "string",
                              "description": "Currency of the deposit"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the order/deposit"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount. It can be 0 while bank transfer details are open-amount or still being provisioned."
                            },
                            "extraDepositMethods": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "methodType": {
                                    "type": "string",
                                    "enum": [
                                      "HOSTED_CHECKOUT"
                                    ],
                                    "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                                  },
                                  "url": {
                                    "type": "string",
                                    "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                                    "example": "https://checkout.example.com/pay/abc123"
                                  },
                                  "callbackUrl": {
                                    "type": "string",
                                    "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Payment reference for this method (equals the deposit/order reference)"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                                  },
                                  "currency": {
                                    "type": "string",
                                    "description": "Currency of this method"
                                  },
                                  "expiresAt": {
                                    "type": "number",
                                    "description": "Unix ms after which `url` is no longer valid, when known"
                                  }
                                },
                                "required": [
                                  "methodType",
                                  "url"
                                ],
                                "description": "An additional, optional way to pay this deposit"
                              },
                              "description": "Additional ways to pay while the bank details are being provisioned (e.g. a hosted card page). Optional — ignore it and wait for the bank details if you only support bank transfer."
                            },
                            "pendingReason": {
                              "type": "string",
                              "enum": [
                                "collection_account_activating",
                                "accountless_per_account_corridor"
                              ],
                              "description": "Why the instructions are still being provisioned, when the reason is known. `collection_account_activating` means the collection account for this payer is being activated and payable details are expected shortly. `accountless_per_account_corridor` means this corridor collects only into a collection account dedicated to the paying account, this request names no account, and none can be created for it — so payable details will NOT arrive by waiting; create the deposit against an account instead. Absence never conveys timing on either surface: here it means only that no reason is classifiable, and an account-level deposit-method instruction never carries the field at all. Treat the values as an open set and ignore any you do not recognise."
                            }
                          },
                          "required": [
                            "depositType",
                            "currency",
                            "referenceCode",
                            "amount"
                          ],
                          "description": "Deposit details are being provisioned; poll the order/deposit or wait for webhook"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "IMPS"
                              ]
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Name of the bank"
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Name of the account holder"
                            },
                            "ifsc": {
                              "type": "string",
                              "description": "ifsc number"
                            },
                            "type": {
                              "type": "string",
                              "description": "Type of the deposit"
                            },
                            "branch": {
                              "type": "string",
                              "description": "Branch of the bank"
                            },
                            "bank": {
                              "type": "string",
                              "description": "Bank of the account"
                            },
                            "otp": {
                              "type": "string",
                              "description": "OTP of the deposit"
                            },
                            "bankNotes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "number",
                                    "description": "Type of note: -1 for warning, 1 for info"
                                  },
                                  "msg": {
                                    "type": "string",
                                    "description": "Message content"
                                  }
                                },
                                "required": [
                                  "type",
                                  "msg"
                                ]
                              },
                              "description": "Additional bank instructions"
                            }
                          },
                          "required": [
                            "depositType",
                            "accountNumber",
                            "bankName",
                            "accountHolder",
                            "ifsc",
                            "type",
                            "branch",
                            "bank",
                            "otp"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "UPI"
                              ]
                            },
                            "vpa": {
                              "type": "string",
                              "description": "Virtual Payment Address"
                            },
                            "name": {
                              "type": "string",
                              "description": "Name of the account holder"
                            },
                            "otp": {
                              "type": "string",
                              "description": "OTP for the transaction"
                            },
                            "paymentLink": {
                              "type": "string",
                              "description": "Payment link"
                            },
                            "upiNotes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "number",
                                    "description": "Type of note: -1 for warning, 1 for info"
                                  },
                                  "msg": {
                                    "type": "string",
                                    "description": "Message content"
                                  }
                                },
                                "required": [
                                  "type",
                                  "msg"
                                ]
                              },
                              "description": "Additional UPI instructions"
                            }
                          },
                          "required": [
                            "depositType",
                            "vpa",
                            "name",
                            "otp",
                            "paymentLink"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "AED_BANK_TRANSFER"
                              ]
                            },
                            "iban": {
                              "type": "string",
                              "description": "International Bank Account Number"
                            },
                            "name": {
                              "type": "string",
                              "description": "Name of the account holder"
                            },
                            "bank": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "type": {
                              "type": "string",
                              "description": "Account type"
                            },
                            "address": {
                              "type": "string",
                              "description": "Bank address"
                            },
                            "email": {
                              "type": "string",
                              "description": "Contact email"
                            },
                            "phoneNumber": {
                              "type": "string",
                              "description": "Contact phone number"
                            },
                            "transferCode": {
                              "type": "string",
                              "description": "Transfer code"
                            },
                            "poBox": {
                              "type": "string",
                              "description": "P.O. Box"
                            },
                            "otp": {
                              "type": "string",
                              "description": "OTP for the transaction"
                            },
                            "bankNotes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "number",
                                    "description": "Type of note: -1 for warning, 1 for info"
                                  },
                                  "msg": {
                                    "type": "string",
                                    "description": "Message content"
                                  }
                                },
                                "required": [
                                  "type",
                                  "msg"
                                ]
                              },
                              "description": "Additional bank instructions"
                            }
                          },
                          "required": [
                            "depositType",
                            "iban",
                            "name",
                            "bank",
                            "type",
                            "address",
                            "email",
                            "phoneNumber",
                            "transferCode",
                            "poBox",
                            "otp"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "SPEI"
                              ]
                            },
                            "clabe": {
                              "type": "string",
                              "description": "CLABE number"
                            },
                            "name": {
                              "type": "string",
                              "description": "Name of the account holder"
                            },
                            "bank": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankNotes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "number",
                                    "description": "Type of note: -1 for warning, 1 for info"
                                  },
                                  "msg": {
                                    "type": "string",
                                    "description": "Message content"
                                  }
                                },
                                "required": [
                                  "type",
                                  "msg"
                                ]
                              },
                              "description": "Additional bank instructions"
                            }
                          },
                          "required": [
                            "depositType",
                            "clabe",
                            "name",
                            "bank"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "TRY_BANK_TRANSFER"
                              ]
                            },
                            "iban": {
                              "type": "string",
                              "description": "International Bank Account Number"
                            },
                            "name": {
                              "type": "string",
                              "description": "Name of the account holder"
                            },
                            "bank": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "otp": {
                              "type": "string",
                              "description": "OTP for the transaction"
                            },
                            "bankNotes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "number",
                                    "description": "Type of note: -1 for warning, 1 for info"
                                  },
                                  "msg": {
                                    "type": "string",
                                    "description": "Message content"
                                  }
                                },
                                "required": [
                                  "type",
                                  "msg"
                                ]
                              },
                              "description": "Additional bank instructions"
                            }
                          },
                          "required": [
                            "depositType",
                            "iban",
                            "name",
                            "bank",
                            "otp"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "IDR_BANK_TRANSFER"
                              ]
                            },
                            "virtualAccount": {
                              "type": "string",
                              "description": "Virtual account number"
                            },
                            "name": {
                              "type": "string",
                              "description": "Name of the account holder"
                            },
                            "bank": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankNotes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "number",
                                    "description": "Type of note: -1 for warning, 1 for info"
                                  },
                                  "msg": {
                                    "type": "string",
                                    "description": "Message content"
                                  }
                                },
                                "required": [
                                  "type",
                                  "msg"
                                ]
                              },
                              "description": "Additional bank instructions"
                            }
                          },
                          "required": [
                            "depositType",
                            "virtualAccount",
                            "name",
                            "bank"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "THAI_QR"
                              ]
                            },
                            "qrCode": {
                              "type": "string",
                              "description": "QR code"
                            },
                            "otp": {
                              "type": "string",
                              "description": "OTP for the transaction"
                            },
                            "bankNotes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "number",
                                    "description": "Type of note: -1 for warning, 1 for info"
                                  },
                                  "msg": {
                                    "type": "string",
                                    "description": "Message content"
                                  }
                                },
                                "required": [
                                  "type",
                                  "msg"
                                ]
                              },
                              "description": "Additional bank instructions"
                            }
                          },
                          "required": [
                            "depositType",
                            "qrCode",
                            "otp"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "VIET_QR"
                              ]
                            },
                            "qrCode": {
                              "type": "string",
                              "description": "QR code"
                            },
                            "otp": {
                              "type": "string",
                              "description": "OTP for the transaction"
                            },
                            "bankNotes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "number",
                                    "description": "Type of note: -1 for warning, 1 for info"
                                  },
                                  "msg": {
                                    "type": "string",
                                    "description": "Message content"
                                  }
                                },
                                "required": [
                                  "type",
                                  "msg"
                                ]
                              },
                              "description": "Additional bank instructions"
                            }
                          },
                          "required": [
                            "depositType",
                            "qrCode",
                            "otp"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "GCASH"
                              ]
                            },
                            "qrCode": {
                              "type": "string",
                              "description": "QR code"
                            },
                            "otp": {
                              "type": "string",
                              "description": "OTP for the transaction"
                            },
                            "bankNotes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "number",
                                    "description": "Type of note: -1 for warning, 1 for info"
                                  },
                                  "msg": {
                                    "type": "string",
                                    "description": "Message content"
                                  }
                                },
                                "required": [
                                  "type",
                                  "msg"
                                ]
                              },
                              "description": "Additional bank instructions"
                            }
                          },
                          "required": [
                            "depositType",
                            "qrCode",
                            "otp"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "ARGENTINA_BANK_TRANSFER"
                              ]
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Account number"
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "accountNumber"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "ACH_US"
                              ]
                            },
                            "routingNumber": {
                              "type": "string",
                              "description": "US bank ABA routing number"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "US bank account number"
                            },
                            "beneficiaryName": {
                              "type": "string",
                              "description": "Beneficiary name on the account"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Name of the bank"
                            },
                            "bankAddress": {
                              "type": "string",
                              "description": "Address of the bank"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names (e.g. ACH, Wire)"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount in USD"
                            },
                            "referenceCode": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Reference code to include in the wire/ACH transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "routingNumber",
                            "accountNumber",
                            "beneficiaryName",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "ACH_PULL"
                              ]
                            }
                          },
                          "required": [
                            "depositType"
                          ],
                          "description": "Funds are pulled from the holder's own linked US bank account; no transfer instructions apply"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "LOCALBANK"
                              ],
                              "description": "Deprecated generic local-bank payin type. Superseded by the corridor-specific deposit types (e.g. SEPA, ACH_US, GBP_BANK_TRANSFER, CLABE/SPEI, PIX, ARGENTINA_BANK_TRANSFER, BANK_DEPOSIT_<CC>). Still returned on some corridors and on historical records, so integrators must continue to handle it. Discover the applicable per-currency method via GET /v1/currencies/{currency}/payin-schema.",
                              "deprecated": true
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "GBP_BANK_TRANSFER"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "UK bank account number"
                            },
                            "sortCode": {
                              "type": "string",
                              "description": "UK sort code"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Name of the bank"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names (e.g. Faster Payments, CHAPS, BACS)"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount in GBP"
                            },
                            "referenceCode": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Reference code to include in the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "accountHolder",
                            "accountNumber",
                            "sortCode",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_COL"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_CL"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_BO"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_BR"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_NG"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_KE"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_GH"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_ZA"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_TZ"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_UG"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_RW"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_MW"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_ZM"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_BW"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_CD"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_XOF"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_XAF"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_NG"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_KE"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_GH"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_ZA"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_TZ"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_UG"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_RW"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_MW"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_ZM"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_BW"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_CD"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_XOF"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_XAF"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Expected deposit amount"
                            },
                            "referenceCode": {
                              "type": "string",
                              "description": "Reference code for the transfer"
                            }
                          },
                          "required": [
                            "depositType",
                            "amount",
                            "referenceCode"
                          ]
                        }
                      ],
                      "description": "Details of the deposit",
                      "examples": [
                        {
                          "accountHolder": "John Doe",
                          "iban": "DE8937XXXXXXXXXXXX3000",
                          "bic": "COBADEFFXXX",
                          "bankName": "Commerzbank",
                          "bankAddress": "Mainzer Landstrasse 151-153",
                          "bankCity": "Frankfurt",
                          "bankZipcode": "60327",
                          "bankCountry": "DE",
                          "amount": 1000,
                          "referenceCode": "ABC123",
                          "depositType": "SEPA"
                        }
                      ]
                    },
                    "depositInfoPending": {
                      "type": "boolean",
                      "description": "True while the payment instructions are still being prepared. Poll this deposit until it is false (or absent) before showing the instructions to the payer."
                    },
                    "complianceHold": {
                      "type": "object",
                      "properties": {
                        "reason": {
                          "type": "string",
                          "enum": [
                            "screening",
                            "fiat_monitoring"
                          ],
                          "description": "Compliance hold reason"
                        }
                      },
                      "required": [
                        "reason"
                      ],
                      "description": "Present while the inbound transfer funding this deposit is held in provider compliance review. The deposit stays Reviewing (amount 0, never credited) until the hold clears (promote to Received) or the transfer is rejected/returned (terminalize)."
                    },
                    "pendingPaymentReview": {
                      "type": "object",
                      "properties": {
                        "reason": {
                          "type": "string",
                          "enum": [
                            "name_mismatch",
                            "amount_mismatch",
                            "low_confidence"
                          ],
                          "description": "Why the payment was not linked automatically. name_mismatch = the payer name differs from the holder; amount_mismatch = the amount differs from the expected one; low_confidence = not enough matching detail. These are the SYSTEM codes for why the payment was not auto-linked; they are not the operator-supplied preLinked.reasonCode published by GET /v1/pending-payments.",
                          "examples": [
                            "amount_mismatch"
                          ]
                        }
                      },
                      "required": [
                        "reason"
                      ],
                      "additionalProperties": false,
                      "description": "Present when a payment has arrived for this deposit and is awaiting a link decision. Retrieve and act on it via GET /v1/pending-payments. Absent when no payment is awaiting a decision — its absence does NOT mean no payment arrived, only that none is pending review."
                    }
                  },
                  "required": [
                    "depositId",
                    "createdAt",
                    "expectedAmount",
                    "amount",
                    "currency",
                    "fee",
                    "expectedFee",
                    "feeCurrency",
                    "status",
                    "depositInfo"
                  ],
                  "description": "Response schema for getting deposit details"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/deposits/dep_3F2b8Qure\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/deposits/dep_3F2b8Qure\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/deposits/dep_3F2b8Qure\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      },
      "delete": {
        "summary": "Delete a deposit",
        "description": "This endpoint deletes a specific deposit.",
        "tags": [
          "Deposits"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 12,
              "maxLength": 12,
              "pattern": "^[A-Z0-9]{12}$",
              "description": "ID of the deposit",
              "examples": [
                "01CLFXMT67II",
                "2R7E5Y5KFXP8",
                "4FWWRE3Y2URM"
              ]
            },
            "required": true,
            "description": "ID of the deposit",
            "name": "depositId",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful deletion of deposit",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Whether the deletion was successful"
                    },
                    "message": {
                      "type": "string",
                      "description": "Success message"
                    }
                  },
                  "required": [
                    "success"
                  ],
                  "description": "Response schema for successful deletion"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/deposits/dep_3F2b8Qure\", {\n    method: \"DELETE\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.delete(\n    \"https://api.virtuabroker.com/v1/deposits/dep_3F2b8Qure\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X DELETE \"https://api.virtuabroker.com/v1/deposits/dep_3F2b8Qure\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      },
      "put": {
        "summary": "Update a deposit",
        "description": "Updates a deposit. Currently only cancellation is supported: send `status` = `Canceled` to cancel a deposit. Returns `true` when the cancellation was applied.",
        "tags": [
          "Deposits"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "description": "ID of the deposit"
            },
            "required": true,
            "description": "ID of the deposit",
            "name": "depositId",
            "in": "path"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "depositId": {
                    "type": "string",
                    "description": "ID of the order to update"
                  },
                  "status": {
                    "type": "string",
                    "enum": [
                      "Canceled"
                    ],
                    "description": "Status of the order. Only Canceled is allowed"
                  }
                },
                "required": [
                  "depositId",
                  "status"
                ],
                "description": "Request schema for updating an offramped order"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Whether the update was applied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "boolean",
                  "description": "True if the deposit was cancelled"
                }
              }
            }
          },
          "400": {
            "description": "Bad request (validation error)",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/deposits/dep_3F2b8Qure\", {\n    method: \"PUT\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"depositId\": \"string\",\n      \"status\": \"Canceled\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.put(\n    \"https://api.virtuabroker.com/v1/deposits/dep_3F2b8Qure\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"depositId\": \"string\",\n        \"status\": \"Canceled\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X PUT \"https://api.virtuabroker.com/v1/deposits/dep_3F2b8Qure\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"depositId\": \"string\",\n  \"status\": \"Canceled\"\n}'"
          }
        ]
      }
    },
    "/v1/deposits/methods": {
      "post": {
        "summary": "Create a deposit method",
        "description": "Provisions (or returns the existing) reusable deposit method for an account — a crypto wallet (methodType `crypto`, with a `network`) or a fiat receiving account (methodType `fiat`, for EUR/USD/GBP/MXN/ARS/BRL). Returns the normalized deposit method, including receive instructions when they are already available. Provider-agnostic: the method is provisioned with whichever payment provider serves that currency on your workspace, and which one it is never appears in the response.\n\n`accountId` is the user email for individual users; for organisations use the `accountId` returned by GET /v1/kyc/{accountEmail}.\n\nFiat provisioning can be asynchronous: the method is returned with `status` `PENDING` and a `deposit_method_activated` webhook is sent once `depositInfo` (IBAN, account number, a Pix code, or — for a corridor collected on a hosted page — a payment page `url`) is available. Depending on the corridor, personal data of the account owner may be required (address, city, postalCode, and for some corridors dob and phoneNumber) — when data is missing the request fails with a message listing exactly which fields are absent; provide them in `userData` (same shape as the order `destinationUserData`).\n\nSome currencies are served through a shared collection account: no dedicated method can be created on demand there — it is issued automatically when the account is ready (announced via the deposit_method webhooks), or transfer instructions can be obtained per deposit via POST /v1/deposits.",
        "tags": [
          "Deposits"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "accountId": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Account id that will own the deposit method"
                  },
                  "userData": {
                    "oneOf": [
                      {
                        "type": "object",
                        "properties": {
                          "userType": {
                            "type": "string",
                            "enum": [
                              "individual"
                            ]
                          },
                          "firstName": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 50,
                            "description": "First name of the user making the deposit (or representative for business)",
                            "examples": [
                              "John",
                              "Alice",
                              "Bob"
                            ]
                          },
                          "lastName": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "Last name of the user making the deposit (or representative for business)",
                            "examples": [
                              "Doe",
                              "Smith",
                              "Johnson"
                            ]
                          },
                          "userEmail": {
                            "type": "string",
                            "maxLength": 254,
                            "format": "email",
                            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                            "description": "Email of the user making the deposit",
                            "examples": [
                              "user@virtuabroker.com",
                              "john.doe@example.com",
                              "alice@example.com"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "maxLength": 150,
                            "description": "Address of the user making the deposit",
                            "examples": [
                              "123 Main St, Anytown, ES",
                              "456 Elm St, Anytown, ES",
                              "789 Oak St, Anytown, ES"
                            ]
                          },
                          "taxDocumentType": {
                            "type": "string",
                            "maxLength": 50,
                            "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                            "examples": [
                              "CC",
                              "NIT",
                              "CE",
                              "NIF",
                              "Other"
                            ]
                          },
                          "taxId": {
                            "type": "string",
                            "maxLength": 30,
                            "description": "Tax ID of the user making the deposit",
                            "examples": [
                              "123-45-6789",
                              "987-65-4321",
                              "111-22-3333"
                            ]
                          },
                          "country": {
                            "type": "string",
                            "enum": [
                              "US",
                              "CA",
                              "GB",
                              "DE",
                              "FR",
                              "AU",
                              "JP",
                              "KR",
                              "SE",
                              "NO",
                              "DK",
                              "FI",
                              "NL",
                              "BE",
                              "CH",
                              "AT",
                              "NZ",
                              "SG",
                              "IE",
                              "LU",
                              "PT",
                              "ES",
                              "IT",
                              "GR",
                              "CZ",
                              "PL",
                              "HU",
                              "SK",
                              "SI",
                              "EE",
                              "LT",
                              "LV",
                              "IS",
                              "MT",
                              "CY",
                              "HR",
                              "RO",
                              "BG",
                              "BR",
                              "AR",
                              "CL",
                              "MX",
                              "CO",
                              "PE",
                              "PA",
                              "UY",
                              "BO",
                              "ZA",
                              "NG",
                              "KE",
                              "GH",
                              "TZ",
                              "UG",
                              "RW",
                              "MW",
                              "ZM",
                              "BW",
                              "CD",
                              "CI",
                              "CM",
                              "IL",
                              "AE",
                              "QA",
                              "SA",
                              "OM",
                              "KW",
                              "BH",
                              "MY",
                              "PH",
                              "TH",
                              "VN",
                              "ID",
                              "IN",
                              "LK",
                              "NP",
                              "BD",
                              "PK",
                              "EG",
                              "MA",
                              "DZ",
                              "TN",
                              "JO",
                              "LB",
                              "TR",
                              "KH",
                              "MM",
                              "LA",
                              "EN",
                              "BT",
                              "VE",
                              "TW",
                              "HK",
                              "CN"
                            ],
                            "description": "Country code of the user making the deposit",
                            "examples": [
                              "ES",
                              "US",
                              "GB"
                            ]
                          },
                          "state": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "State of the user making the deposit",
                            "examples": [
                              "Madrid",
                              "New York",
                              "London"
                            ]
                          },
                          "postalCode": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 30,
                            "description": "Postal code of the user making the deposit",
                            "examples": [
                              "12345",
                              "67890",
                              "abcde"
                            ]
                          },
                          "city": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "City of the user making the deposit",
                            "examples": [
                              "Madrid",
                              "New York",
                              "London"
                            ]
                          },
                          "dob": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 30,
                            "description": "Date of birth of the user making the deposit",
                            "examples": [
                              "1990-01-01",
                              "1995-05-15",
                              "1988-12-31"
                            ]
                          },
                          "phoneNumber": {
                            "type": "string",
                            "maxLength": 30,
                            "description": "Phone number of the user making the deposit",
                            "examples": [
                              "+447700900123",
                              "+447700900456",
                              "+447700900789"
                            ]
                          },
                          "kycId": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 300,
                            "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                            "examples": [
                              "kyc-12345",
                              "kyc-67890",
                              "kyc-abcde"
                            ]
                          },
                          "activity": {
                            "type": "string",
                            "description": "Activity of the user making the deposit",
                            "examples": [
                              "worker",
                              "business",
                              "student"
                            ]
                          }
                        },
                        "required": [
                          "userType",
                          "firstName",
                          "userEmail",
                          "country"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "userType": {
                            "type": "string",
                            "enum": [
                              "business"
                            ]
                          },
                          "businessName": {
                            "type": "string",
                            "maxLength": 150,
                            "description": "Business name (required when userType is business)",
                            "examples": [
                              "Acme Corp",
                              "Tech Solutions Inc",
                              "Global Services Ltd"
                            ]
                          },
                          "firstName": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 50,
                            "description": "First name of the user making the deposit (or representative for business)",
                            "examples": [
                              "John",
                              "Alice",
                              "Bob"
                            ]
                          },
                          "userEmail": {
                            "type": "string",
                            "maxLength": 254,
                            "format": "email",
                            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                            "description": "Email of the user making the deposit",
                            "examples": [
                              "user@virtuabroker.com",
                              "john.doe@example.com",
                              "alice@example.com"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "maxLength": 150,
                            "description": "Address of the user making the deposit",
                            "examples": [
                              "123 Main St, Anytown, ES",
                              "456 Elm St, Anytown, ES",
                              "789 Oak St, Anytown, ES"
                            ]
                          },
                          "taxDocumentType": {
                            "type": "string",
                            "maxLength": 50,
                            "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                            "examples": [
                              "CC",
                              "NIT",
                              "CE",
                              "NIF",
                              "Other"
                            ]
                          },
                          "taxId": {
                            "type": "string",
                            "maxLength": 30,
                            "description": "Tax ID of the user making the deposit",
                            "examples": [
                              "123-45-6789",
                              "987-65-4321",
                              "111-22-3333"
                            ]
                          },
                          "country": {
                            "type": "string",
                            "enum": [
                              "US",
                              "CA",
                              "GB",
                              "DE",
                              "FR",
                              "AU",
                              "JP",
                              "KR",
                              "SE",
                              "NO",
                              "DK",
                              "FI",
                              "NL",
                              "BE",
                              "CH",
                              "AT",
                              "NZ",
                              "SG",
                              "IE",
                              "LU",
                              "PT",
                              "ES",
                              "IT",
                              "GR",
                              "CZ",
                              "PL",
                              "HU",
                              "SK",
                              "SI",
                              "EE",
                              "LT",
                              "LV",
                              "IS",
                              "MT",
                              "CY",
                              "HR",
                              "RO",
                              "BG",
                              "BR",
                              "AR",
                              "CL",
                              "MX",
                              "CO",
                              "PE",
                              "PA",
                              "UY",
                              "BO",
                              "ZA",
                              "NG",
                              "KE",
                              "GH",
                              "TZ",
                              "UG",
                              "RW",
                              "MW",
                              "ZM",
                              "BW",
                              "CD",
                              "CI",
                              "CM",
                              "IL",
                              "AE",
                              "QA",
                              "SA",
                              "OM",
                              "KW",
                              "BH",
                              "MY",
                              "PH",
                              "TH",
                              "VN",
                              "ID",
                              "IN",
                              "LK",
                              "NP",
                              "BD",
                              "PK",
                              "EG",
                              "MA",
                              "DZ",
                              "TN",
                              "JO",
                              "LB",
                              "TR",
                              "KH",
                              "MM",
                              "LA",
                              "EN",
                              "BT",
                              "VE",
                              "TW",
                              "HK",
                              "CN"
                            ],
                            "description": "Country code of the user making the deposit",
                            "examples": [
                              "ES",
                              "US",
                              "GB"
                            ]
                          },
                          "state": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "State of the user making the deposit",
                            "examples": [
                              "Madrid",
                              "New York",
                              "London"
                            ]
                          },
                          "postalCode": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 30,
                            "description": "Postal code of the user making the deposit",
                            "examples": [
                              "12345",
                              "67890",
                              "abcde"
                            ]
                          },
                          "city": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "City of the user making the deposit",
                            "examples": [
                              "Madrid",
                              "New York",
                              "London"
                            ]
                          },
                          "dob": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 30,
                            "description": "Date of birth of the user making the deposit",
                            "examples": [
                              "1990-01-01",
                              "1995-05-15",
                              "1988-12-31"
                            ]
                          },
                          "phoneNumber": {
                            "type": "string",
                            "maxLength": 30,
                            "description": "Phone number of the user making the deposit",
                            "examples": [
                              "+447700900123",
                              "+447700900456",
                              "+447700900789"
                            ]
                          },
                          "kycId": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 300,
                            "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                            "examples": [
                              "kyc-12345",
                              "kyc-67890",
                              "kyc-abcde"
                            ]
                          },
                          "activity": {
                            "type": "string",
                            "description": "Activity of the user making the deposit",
                            "examples": [
                              "worker",
                              "business",
                              "student"
                            ]
                          }
                        },
                        "required": [
                          "userType",
                          "businessName",
                          "firstName",
                          "userEmail",
                          "country"
                        ]
                      }
                    ],
                    "description": "Personal data of the account owner used to provision fiat deposit methods (address, city, postalCode, country...). Same shape as the order destinationUserData. Fields provided here take precedence over data already on file."
                  },
                  "methodType": {
                    "type": "string",
                    "enum": [
                      "crypto",
                      "fiat"
                    ],
                    "default": "crypto",
                    "description": "Deposit method type"
                  },
                  "currency": {
                    "anyOf": [
                      {
                        "type": "string",
                        "enum": [
                          "EUR",
                          "USD",
                          "GBP",
                          "BRL",
                          "MXN",
                          "ARS",
                          "COP",
                          "PEN",
                          "NGN",
                          "KES",
                          "TZS",
                          "UGX",
                          "RWF",
                          "MWK",
                          "ZMW",
                          "XOF",
                          "XAF",
                          "BWP"
                        ]
                      },
                      {
                        "type": "string",
                        "enum": [
                          "USDC",
                          "USDT",
                          "CUSD",
                          "BTC",
                          "ETH",
                          "POL",
                          "SOL",
                          "TRX",
                          "AVAX",
                          "XRP",
                          "BNB"
                        ]
                      },
                      {
                        "type": "string",
                        "enum": [
                          "USD"
                        ]
                      },
                      {
                        "type": "string",
                        "enum": [
                          "GBP"
                        ]
                      }
                    ],
                    "description": "Currency for the deposit method"
                  },
                  "network": {
                    "type": "string",
                    "enum": [
                      "BALANCE",
                      "SEPA",
                      "BTC",
                      "ETH",
                      "MATIC",
                      "POLYGON",
                      "CELO",
                      "TRON",
                      "SOLANA",
                      "ARBITRUM",
                      "OPTIMISM",
                      "AVALANCHE",
                      "BSC",
                      "BASE",
                      "XRP",
                      "PIX_BR",
                      "UPI",
                      "IMPS",
                      "TRY_BANK_TRANSFER",
                      "AED_BANK_TRANSFER",
                      "SPEI",
                      "IDR_BANK_TRANSFER",
                      "CREDIT_CARD",
                      "THAI_QR",
                      "VIET_QR",
                      "GCASH",
                      "ARGENTINA_BANK_TRANSFER",
                      "PSE",
                      "CLABE",
                      "PIX",
                      "BANK_DEPOSIT_COL",
                      "BANK_DEPOSIT_AR",
                      "BANK_DEPOSIT_CL",
                      "BANK_DEPOSIT_PE",
                      "BANK_DEPOSIT_BO",
                      "BANK_DEPOSIT_BR",
                      "BANK_DEPOSIT_NG",
                      "BANK_DEPOSIT_KE",
                      "BANK_DEPOSIT_GH",
                      "BANK_DEPOSIT_ZA",
                      "BANK_DEPOSIT_TZ",
                      "BANK_DEPOSIT_UG",
                      "BANK_DEPOSIT_RW",
                      "BANK_DEPOSIT_MW",
                      "BANK_DEPOSIT_ZM",
                      "BANK_DEPOSIT_BW",
                      "BANK_DEPOSIT_CD",
                      "BANK_DEPOSIT_XOF",
                      "BANK_DEPOSIT_XAF",
                      "MOBILE_MONEY_NG",
                      "MOBILE_MONEY_KE",
                      "MOBILE_MONEY_GH",
                      "MOBILE_MONEY_ZA",
                      "MOBILE_MONEY_TZ",
                      "MOBILE_MONEY_UG",
                      "MOBILE_MONEY_RW",
                      "MOBILE_MONEY_MW",
                      "MOBILE_MONEY_ZM",
                      "MOBILE_MONEY_BW",
                      "MOBILE_MONEY_CD",
                      "MOBILE_MONEY_XOF",
                      "MOBILE_MONEY_XAF",
                      "ACH_US",
                      "GBP_BANK_TRANSFER"
                    ],
                    "description": "Network/rail for crypto deposit methods"
                  }
                },
                "required": [
                  "accountId",
                  "currency"
                ],
                "description": "Request schema for creating a deposit method (generic)"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Deposit method created, or the existing one returned — calling again for the same account and currency is safe and does not create a second method",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "methodId": {
                      "type": "string",
                      "description": "Deposit method id"
                    },
                    "methodType": {
                      "type": "string",
                      "enum": [
                        "crypto",
                        "fiat"
                      ],
                      "description": "Normalized deposit method type"
                    },
                    "currency": {
                      "type": "string",
                      "description": "Currency of the deposit method"
                    },
                    "network": {
                      "type": "string",
                      "description": "Network for crypto deposit methods"
                    },
                    "status": {
                      "type": "string",
                      "enum": [
                        "ACTIVE",
                        "PENDING"
                      ],
                      "description": "Normalized deposit method status"
                    },
                    "depositInfo": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "address": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Crypto wallet address",
                              "example": "0x1A2b3C4d5E6f7890AbCdEf1234567890AbCdEf12"
                            },
                            "network": {
                              "type": "string",
                              "enum": [
                                "MATIC",
                                "ETH",
                                "CELO",
                                "TRON",
                                "BTC",
                                "SOLANA",
                                "XRP",
                                "CARDANO",
                                "BSC",
                                "ARBITRUM",
                                "OPTIMISM",
                                "AVALANCHE",
                                "BASE"
                              ],
                              "description": "Network for the deposit for crypto deposits",
                              "examples": [
                                "ETH",
                                "MATIC",
                                "CELO"
                              ]
                            },
                            "memo": {
                              "type": "string",
                              "description": "Optional memo for the transaction",
                              "example": "Payment for services"
                            },
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "CRYPTO"
                              ]
                            },
                            "qrCode": {
                              "type": "string",
                              "description": "Base64-encoded QR image for the deposit address",
                              "example": "iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAIAAADTED8xAAABpklEQVR42u3BAQ0AAADCoPdPbQ8HFAAAAAAAAAAAAAAAAAA..."
                            },
                            "qrCodeUrl": {
                              "type": "string",
                              "format": "uri",
                              "description": "7-day signed GCS URL of the QR code PNG"
                            },
                            "qrCodeExpiresAt": {
                              "type": "number",
                              "description": "Unix timestamp (ms) when qrCodeUrl expires"
                            },
                            "receivingAddress": {
                              "type": "string",
                              "description": "The wallet address where funds should be sent",
                              "example": "0xAbCdEf0123456789AbCdEf0123456789AbCdEf01"
                            },
                            "tokenContract": {
                              "type": "string",
                              "description": "The ERC20 token contract address",
                              "example": "0x765DE816845861e75A25fCA122bb6898B8B1282a"
                            },
                            "decimals": {
                              "type": "number",
                              "description": "Token decimals (default 18)",
                              "example": 18
                            }
                          },
                          "required": [
                            "address",
                            "network",
                            "depositType"
                          ],
                          "description": "Crypto Deposit Information"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "SEPA"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "iban": {
                              "type": "string",
                              "description": "SEPA Bank Account Number"
                            },
                            "bic": {
                              "type": "string",
                              "description": "Bank BIC/SWIFT code"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Name of the bank"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "referenceCode": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Payment reference the payer must include in the transfer. Present when this account is a shared collection account, where the reference (not the account number) is what attributes an incoming payment. Absent when the account is dedicated to this deposit method, in which case the coordinates alone identify it. When present it is mandatory: a transfer that omits it cannot be attributed automatically."
                            }
                          },
                          "required": [
                            "depositType",
                            "iban"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "ACH_US"
                              ]
                            },
                            "routingNumber": {
                              "type": "string",
                              "description": "US bank ABA routing number"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "US bank account number"
                            },
                            "beneficiaryName": {
                              "type": "string",
                              "description": "Beneficiary name on the account"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Name of the bank"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names (e.g. ACH, Wire)"
                            }
                          },
                          "required": [
                            "depositType",
                            "routingNumber",
                            "accountNumber",
                            "beneficiaryName"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "GBP_BANK_TRANSFER"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "UK bank account number"
                            },
                            "sortCode": {
                              "type": "string",
                              "description": "UK sort code"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Name of the bank"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names (e.g. Faster Payments, CHAPS, BACS)"
                            }
                          },
                          "required": [
                            "depositType",
                            "accountNumber",
                            "sortCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "LOCALBANK"
                              ]
                            },
                            "accountHolder": {
                              "type": "string",
                              "description": "Account holder name"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "Local bank account number"
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "bankCountry": {
                              "type": "string",
                              "description": "ISO-3166 country code"
                            },
                            "routingCodes": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                  },
                                  "value": {
                                    "type": "string",
                                    "description": "Routing code value"
                                  }
                                },
                                "required": [
                                  "type",
                                  "value"
                                ]
                              },
                              "description": "Routing identifiers (e.g. sort code, routing number)"
                            },
                            "schemes": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Accepted payment scheme names for this account"
                            }
                          },
                          "required": [
                            "depositType"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "PIX"
                              ]
                            },
                            "qrCodeString": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Pix copia-e-cola payload (EMV BR Code text) the payer pastes into their bank app; the payer enters the amount"
                            },
                            "base64QRCode": {
                              "type": "string",
                              "minLength": 1,
                              "description": "The same payload rendered as a PNG, raw base64 (no data-URI prefix)"
                            }
                          },
                          "required": [
                            "depositType",
                            "qrCodeString",
                            "base64QRCode"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "PENDING"
                              ]
                            },
                            "currency": {
                              "type": "string",
                              "description": "Currency of the deposit method"
                            }
                          },
                          "required": [
                            "depositType",
                            "currency"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "url": {
                              "type": "string",
                              "description": "URL of the PSE payment"
                            },
                            "amountPrefilled": {
                              "type": "boolean",
                              "description": "Whether the payment page already carries the amount. When false or absent, the payer must enter it."
                            },
                            "depositType": {
                              "type": "string",
                              "enum": [
                                "PSE"
                              ],
                              "description": "Type of the deposit"
                            }
                          },
                          "required": [
                            "url",
                            "depositType"
                          ]
                        }
                      ],
                      "description": "Deposit instructions for the method when available"
                    },
                    "createdAt": {
                      "type": "number",
                      "description": "Creation timestamp"
                    },
                    "updatedAt": {
                      "type": "number",
                      "description": "Last update timestamp"
                    }
                  },
                  "required": [
                    "methodId",
                    "methodType",
                    "currency",
                    "status"
                  ],
                  "description": "Response schema for creating a generic deposit method"
                }
              }
            }
          },
          "400": {
            "description": "Bad request (validation error, including missing required userData fields — the message lists them)",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "404": {
            "description": "No account matches the `accountId` supplied — the usual cause is a typo, or using an email where an organisation needs the `accountId` from GET /v1/kyc/{accountEmail}",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "409": {
            "description": "The method cannot be issued in this state — the currency is served through a shared collection account (use POST /v1/deposits for per-deposit instructions), or the account has not completed verification yet",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/deposits/methods\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"accountId\": \"string\",\n      \"userData\": {\n        \"userType\": \"individual\",\n        \"firstName\": \"John\",\n        \"lastName\": \"Doe\",\n        \"userEmail\": \"user@virtuabroker.com\",\n        \"address\": \"123 Main St, Anytown, ES\",\n        \"taxDocumentType\": \"CC\",\n        \"taxId\": \"123-45-6789\",\n        \"country\": \"ES\",\n        \"state\": \"Madrid\",\n        \"postalCode\": \"12345\",\n        \"city\": \"Madrid\",\n        \"dob\": \"1990-01-01\",\n        \"phoneNumber\": \"+447700900123\",\n        \"kycId\": \"kyc-12345\",\n        \"activity\": \"worker\"\n      },\n      \"methodType\": \"crypto\",\n      \"currency\": \"EUR\",\n      \"network\": \"BALANCE\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api.virtuabroker.com/v1/deposits/methods\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"accountId\": \"string\",\n        \"userData\": {\n            \"userType\": \"individual\",\n            \"firstName\": \"John\",\n            \"lastName\": \"Doe\",\n            \"userEmail\": \"user@virtuabroker.com\",\n            \"address\": \"123 Main St, Anytown, ES\",\n            \"taxDocumentType\": \"CC\",\n            \"taxId\": \"123-45-6789\",\n            \"country\": \"ES\",\n            \"state\": \"Madrid\",\n            \"postalCode\": \"12345\",\n            \"city\": \"Madrid\",\n            \"dob\": \"1990-01-01\",\n            \"phoneNumber\": \"+447700900123\",\n            \"kycId\": \"kyc-12345\",\n            \"activity\": \"worker\"\n        },\n        \"methodType\": \"crypto\",\n        \"currency\": \"EUR\",\n        \"network\": \"BALANCE\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api.virtuabroker.com/v1/deposits/methods\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"accountId\": \"string\",\n  \"userData\": {\n    \"userType\": \"individual\",\n    \"firstName\": \"John\",\n    \"lastName\": \"Doe\",\n    \"userEmail\": \"user@virtuabroker.com\",\n    \"address\": \"123 Main St, Anytown, ES\",\n    \"taxDocumentType\": \"CC\",\n    \"taxId\": \"123-45-6789\",\n    \"country\": \"ES\",\n    \"state\": \"Madrid\",\n    \"postalCode\": \"12345\",\n    \"city\": \"Madrid\",\n    \"dob\": \"1990-01-01\",\n    \"phoneNumber\": \"+447700900123\",\n    \"kycId\": \"kyc-12345\",\n    \"activity\": \"worker\"\n  },\n  \"methodType\": \"crypto\",\n  \"currency\": \"EUR\",\n  \"network\": \"BALANCE\"\n}'"
          }
        ]
      },
      "get": {
        "summary": "List deposit methods",
        "description": "Lists the deposit methods of an account, with their current `status` and receiving instructions (`depositInfo`) when available.",
        "tags": [
          "Deposits"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "description": "Optional currency filter"
            },
            "required": false,
            "description": "Optional currency filter",
            "name": "currency",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "enum": [
                "crypto",
                "fiat"
              ],
              "description": "Optional deposit method type filter"
            },
            "required": false,
            "description": "Optional deposit method type filter",
            "name": "methodType",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "minLength": 1,
              "description": "Account id that owns the deposit methods"
            },
            "required": true,
            "description": "Account id that owns the deposit methods",
            "name": "accountId",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful retrieval of deposit methods",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "methods": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "methodId": {
                            "type": "string",
                            "description": "Deposit method id"
                          },
                          "methodType": {
                            "type": "string",
                            "enum": [
                              "crypto",
                              "fiat"
                            ],
                            "description": "Normalized deposit method type"
                          },
                          "currency": {
                            "type": "string",
                            "description": "Currency of the deposit method"
                          },
                          "network": {
                            "type": "string",
                            "description": "Network for crypto deposit methods"
                          },
                          "status": {
                            "type": "string",
                            "enum": [
                              "ACTIVE",
                              "PENDING"
                            ],
                            "description": "Normalized deposit method status"
                          },
                          "depositInfo": {
                            "oneOf": [
                              {
                                "type": "object",
                                "properties": {
                                  "address": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "Crypto wallet address",
                                    "example": "0x1A2b3C4d5E6f7890AbCdEf1234567890AbCdEf12"
                                  },
                                  "network": {
                                    "type": "string",
                                    "enum": [
                                      "MATIC",
                                      "ETH",
                                      "CELO",
                                      "TRON",
                                      "BTC",
                                      "SOLANA",
                                      "XRP",
                                      "CARDANO",
                                      "BSC",
                                      "ARBITRUM",
                                      "OPTIMISM",
                                      "AVALANCHE",
                                      "BASE"
                                    ],
                                    "description": "Network for the deposit for crypto deposits",
                                    "examples": [
                                      "ETH",
                                      "MATIC",
                                      "CELO"
                                    ]
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Optional memo for the transaction",
                                    "example": "Payment for services"
                                  },
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "CRYPTO"
                                    ]
                                  },
                                  "qrCode": {
                                    "type": "string",
                                    "description": "Base64-encoded QR image for the deposit address",
                                    "example": "iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAIAAADTED8xAAABpklEQVR42u3BAQ0AAADCoPdPbQ8HFAAAAAAAAAAAAAAAAAA..."
                                  },
                                  "qrCodeUrl": {
                                    "type": "string",
                                    "format": "uri",
                                    "description": "7-day signed GCS URL of the QR code PNG"
                                  },
                                  "qrCodeExpiresAt": {
                                    "type": "number",
                                    "description": "Unix timestamp (ms) when qrCodeUrl expires"
                                  },
                                  "receivingAddress": {
                                    "type": "string",
                                    "description": "The wallet address where funds should be sent",
                                    "example": "0xAbCdEf0123456789AbCdEf0123456789AbCdEf01"
                                  },
                                  "tokenContract": {
                                    "type": "string",
                                    "description": "The ERC20 token contract address",
                                    "example": "0x765DE816845861e75A25fCA122bb6898B8B1282a"
                                  },
                                  "decimals": {
                                    "type": "number",
                                    "description": "Token decimals (default 18)",
                                    "example": 18
                                  }
                                },
                                "required": [
                                  "address",
                                  "network",
                                  "depositType"
                                ],
                                "description": "Crypto Deposit Information"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "SEPA"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "iban": {
                                    "type": "string",
                                    "description": "SEPA Bank Account Number"
                                  },
                                  "bic": {
                                    "type": "string",
                                    "description": "Bank BIC/SWIFT code"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Name of the bank"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "Payment reference the payer must include in the transfer. Present when this account is a shared collection account, where the reference (not the account number) is what attributes an incoming payment. Absent when the account is dedicated to this deposit method, in which case the coordinates alone identify it. When present it is mandatory: a transfer that omits it cannot be attributed automatically."
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "iban"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "ACH_US"
                                    ]
                                  },
                                  "routingNumber": {
                                    "type": "string",
                                    "description": "US bank ABA routing number"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "US bank account number"
                                  },
                                  "beneficiaryName": {
                                    "type": "string",
                                    "description": "Beneficiary name on the account"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Name of the bank"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names (e.g. ACH, Wire)"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "routingNumber",
                                  "accountNumber",
                                  "beneficiaryName"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "GBP_BANK_TRANSFER"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "UK bank account number"
                                  },
                                  "sortCode": {
                                    "type": "string",
                                    "description": "UK sort code"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Name of the bank"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names (e.g. Faster Payments, CHAPS, BACS)"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "accountNumber",
                                  "sortCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "LOCALBANK"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  }
                                },
                                "required": [
                                  "depositType"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "PIX"
                                    ]
                                  },
                                  "qrCodeString": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "Pix copia-e-cola payload (EMV BR Code text) the payer pastes into their bank app; the payer enters the amount"
                                  },
                                  "base64QRCode": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "The same payload rendered as a PNG, raw base64 (no data-URI prefix)"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "qrCodeString",
                                  "base64QRCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "PENDING"
                                    ]
                                  },
                                  "currency": {
                                    "type": "string",
                                    "description": "Currency of the deposit method"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "currency"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "url": {
                                    "type": "string",
                                    "description": "URL of the PSE payment"
                                  },
                                  "amountPrefilled": {
                                    "type": "boolean",
                                    "description": "Whether the payment page already carries the amount. When false or absent, the payer must enter it."
                                  },
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "PSE"
                                    ],
                                    "description": "Type of the deposit"
                                  }
                                },
                                "required": [
                                  "url",
                                  "depositType"
                                ]
                              }
                            ],
                            "description": "Deposit instructions for the method when available"
                          },
                          "createdAt": {
                            "type": "number",
                            "description": "Creation timestamp"
                          },
                          "updatedAt": {
                            "type": "number",
                            "description": "Last update timestamp"
                          }
                        },
                        "required": [
                          "methodId",
                          "methodType",
                          "currency",
                          "status"
                        ],
                        "description": "Normalized deposit method resource"
                      },
                      "description": "Deposit methods"
                    }
                  },
                  "required": [
                    "methods"
                  ],
                  "description": "Response schema for listing deposit methods"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/deposits/methods\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/deposits/methods\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/deposits/methods\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/deposits/methods/{methodId}": {
      "get": {
        "summary": "Get deposit method details",
        "description": "Retrieves a single deposit method of an account by its `methodId`.",
        "tags": [
          "Deposits"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 1,
              "description": "Deposit method id"
            },
            "required": true,
            "description": "Deposit method id",
            "name": "methodId",
            "in": "path"
          },
          {
            "schema": {
              "type": "string",
              "minLength": 1,
              "description": "Account id that owns the deposit methods"
            },
            "required": true,
            "description": "Account id that owns the deposit methods",
            "name": "accountId",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful retrieval of deposit method details",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "method": {
                      "type": "object",
                      "properties": {
                        "methodId": {
                          "type": "string",
                          "description": "Deposit method id"
                        },
                        "methodType": {
                          "type": "string",
                          "enum": [
                            "crypto",
                            "fiat"
                          ],
                          "description": "Normalized deposit method type"
                        },
                        "currency": {
                          "type": "string",
                          "description": "Currency of the deposit method"
                        },
                        "network": {
                          "type": "string",
                          "description": "Network for crypto deposit methods"
                        },
                        "status": {
                          "type": "string",
                          "enum": [
                            "ACTIVE",
                            "PENDING"
                          ],
                          "description": "Normalized deposit method status"
                        },
                        "depositInfo": {
                          "oneOf": [
                            {
                              "type": "object",
                              "properties": {
                                "address": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Crypto wallet address",
                                  "example": "0x1A2b3C4d5E6f7890AbCdEf1234567890AbCdEf12"
                                },
                                "network": {
                                  "type": "string",
                                  "enum": [
                                    "MATIC",
                                    "ETH",
                                    "CELO",
                                    "TRON",
                                    "BTC",
                                    "SOLANA",
                                    "XRP",
                                    "CARDANO",
                                    "BSC",
                                    "ARBITRUM",
                                    "OPTIMISM",
                                    "AVALANCHE",
                                    "BASE"
                                  ],
                                  "description": "Network for the deposit for crypto deposits",
                                  "examples": [
                                    "ETH",
                                    "MATIC",
                                    "CELO"
                                  ]
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Optional memo for the transaction",
                                  "example": "Payment for services"
                                },
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "CRYPTO"
                                  ]
                                },
                                "qrCode": {
                                  "type": "string",
                                  "description": "Base64-encoded QR image for the deposit address",
                                  "example": "iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAIAAADTED8xAAABpklEQVR42u3BAQ0AAADCoPdPbQ8HFAAAAAAAAAAAAAAAAAA..."
                                },
                                "qrCodeUrl": {
                                  "type": "string",
                                  "format": "uri",
                                  "description": "7-day signed GCS URL of the QR code PNG"
                                },
                                "qrCodeExpiresAt": {
                                  "type": "number",
                                  "description": "Unix timestamp (ms) when qrCodeUrl expires"
                                },
                                "receivingAddress": {
                                  "type": "string",
                                  "description": "The wallet address where funds should be sent",
                                  "example": "0xAbCdEf0123456789AbCdEf0123456789AbCdEf01"
                                },
                                "tokenContract": {
                                  "type": "string",
                                  "description": "The ERC20 token contract address",
                                  "example": "0x765DE816845861e75A25fCA122bb6898B8B1282a"
                                },
                                "decimals": {
                                  "type": "number",
                                  "description": "Token decimals (default 18)",
                                  "example": 18
                                }
                              },
                              "required": [
                                "address",
                                "network",
                                "depositType"
                              ],
                              "description": "Crypto Deposit Information"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "SEPA"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "iban": {
                                  "type": "string",
                                  "description": "SEPA Bank Account Number"
                                },
                                "bic": {
                                  "type": "string",
                                  "description": "Bank BIC/SWIFT code"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Name of the bank"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Payment reference the payer must include in the transfer. Present when this account is a shared collection account, where the reference (not the account number) is what attributes an incoming payment. Absent when the account is dedicated to this deposit method, in which case the coordinates alone identify it. When present it is mandatory: a transfer that omits it cannot be attributed automatically."
                                }
                              },
                              "required": [
                                "depositType",
                                "iban"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "ACH_US"
                                  ]
                                },
                                "routingNumber": {
                                  "type": "string",
                                  "description": "US bank ABA routing number"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "US bank account number"
                                },
                                "beneficiaryName": {
                                  "type": "string",
                                  "description": "Beneficiary name on the account"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Name of the bank"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names (e.g. ACH, Wire)"
                                }
                              },
                              "required": [
                                "depositType",
                                "routingNumber",
                                "accountNumber",
                                "beneficiaryName"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "GBP_BANK_TRANSFER"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "UK bank account number"
                                },
                                "sortCode": {
                                  "type": "string",
                                  "description": "UK sort code"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Name of the bank"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names (e.g. Faster Payments, CHAPS, BACS)"
                                }
                              },
                              "required": [
                                "depositType",
                                "accountNumber",
                                "sortCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "LOCALBANK"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                }
                              },
                              "required": [
                                "depositType"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "PIX"
                                  ]
                                },
                                "qrCodeString": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Pix copia-e-cola payload (EMV BR Code text) the payer pastes into their bank app; the payer enters the amount"
                                },
                                "base64QRCode": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "The same payload rendered as a PNG, raw base64 (no data-URI prefix)"
                                }
                              },
                              "required": [
                                "depositType",
                                "qrCodeString",
                                "base64QRCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "PENDING"
                                  ]
                                },
                                "currency": {
                                  "type": "string",
                                  "description": "Currency of the deposit method"
                                }
                              },
                              "required": [
                                "depositType",
                                "currency"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "url": {
                                  "type": "string",
                                  "description": "URL of the PSE payment"
                                },
                                "amountPrefilled": {
                                  "type": "boolean",
                                  "description": "Whether the payment page already carries the amount. When false or absent, the payer must enter it."
                                },
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "PSE"
                                  ],
                                  "description": "Type of the deposit"
                                }
                              },
                              "required": [
                                "url",
                                "depositType"
                              ]
                            }
                          ],
                          "description": "Deposit instructions for the method when available"
                        },
                        "createdAt": {
                          "type": "number",
                          "description": "Creation timestamp"
                        },
                        "updatedAt": {
                          "type": "number",
                          "description": "Last update timestamp"
                        }
                      },
                      "required": [
                        "methodId",
                        "methodType",
                        "currency",
                        "status"
                      ],
                      "description": "Normalized deposit method resource"
                    }
                  },
                  "required": [
                    "method"
                  ],
                  "description": "Response schema for getting a deposit method"
                }
              }
            }
          },
          "404": {
            "description": "No deposit method with this methodId exists for the account",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/deposits/methods/YOUR_METHODID\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/deposits/methods/YOUR_METHODID\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/deposits/methods/YOUR_METHODID\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/orders": {
      "post": {
        "summary": "Create an order",
        "description": "\nThis endpoint creates a new order. The order follows a three-step flow:\n\n1. **Origin** — Receive the specified origin amount and currency (e.g. USDC on MATIC, EUR via SEPA).\n\n2. **Trade execution** — Once the origin funds are confirmed, the trade is executed at the quoted rate.\n\n3. **Payout** — After successful execution the destination funds are sent to the `destinationTransferData` address provided in the request (e.g. Venezuelan bank via `BANK_DEPOSIT_VEN`, phone payment via `PHONE_DEPOSIT_VEN`, Brazilian PIX via `PIX_BR`, or a crypto wallet address).\n\n**Important**: For some currencies (e.g., INR), after the user completes the payment you must confirm the payin by calling `POST /v1/orders/{orderId}/confirm-payin`.\n\nFor a standalone payout from balance (without a trade) use **POST /v1/withdrawals** instead.\n\n### IMPS (India) UTR confirmation\n\n- If `destinationTransferData.type` is `IMPS`, after you complete the bank transfer you will receive a UTR (Unique Transaction Reference).\n- You must then confirm the payin by calling `POST /v1/orders/{orderId}/confirm-payin` and set `referenceId` to the received UTR.\n\n\n**On behalf of a managed customer:** pass the optional `accountId` (a customerId from `/v1/banking/customers`) to execute the order for that customer — they become the order origin. The optional structured `destination` block pays out to one of the customer’s saved contacts and/or saved payout addresses (`addressId`). The `accountId` must belong to your workspace; a foreign or unknown id is rejected with a 403 and no order is created.",
        "tags": [
          "Orders"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,127}$",
              "description": "Optional idempotency key: 1–128 characters of letters, digits, dash or underscore, starting with a letter or digit, sent exactly once. A present-but-malformed key is rejected with 400 before anything happens. Replaying the same key with the same payload returns the original response; reusing it with a different payload is rejected with 409. The order id is always server-generated and never derived from this key."
            },
            "required": false,
            "description": "Optional idempotency key: 1–128 characters of letters, digits, dash or underscore, starting with a letter or digit, sent exactly once. A present-but-malformed key is rejected with 400 before anything happens. Replaying the same key with the same payload returns the original response; reusing it with a different payload is rejected with 409. The order id is always server-generated and never derived from this key.",
            "name": "Idempotency-Key",
            "in": "header"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "quoteId": {
                    "type": "string",
                    "format": "uuid",
                    "description": "The unique identifier of the created quote",
                    "examples": [
                      "123e4567-e89b-12d3-a456-426614174000",
                      "987f6543-a21c-45d6-b789-012345678901"
                    ]
                  },
                  "accountId": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Execute the order on behalf of this managed customer (the customerId from /v1/banking/customers). The customer becomes the order origin — the party whose balance/identity the movement belongs to. Must belong to your workspace; a foreign or unknown id is rejected.",
                    "examples": [
                      "jane.doe@example.com"
                    ]
                  },
                  "destination": {
                    "type": "object",
                    "properties": {
                      "contactId": {
                        "type": "string",
                        "minLength": 1,
                        "description": "A saved contact of the on-behalf-of customer — the party receiving the funds."
                      },
                      "contactEmail": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 254,
                        "format": "email",
                        "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                        "description": "Email identifying the receiving party (alternative to contactId)."
                      },
                      "addressId": {
                        "type": "string",
                        "minLength": 1,
                        "description": "A saved destination method (payout address) of the on-behalf-of customer; its transfer details become the payout destination."
                      }
                    },
                    "additionalProperties": false,
                    "description": "Structured destination for on-behalf-of orders: pay out to a managed contact and/or one of the customer saved payout addresses. Requires accountId."
                  },
                  "originCountry": {
                    "type": "string",
                    "minLength": 2,
                    "maxLength": 2,
                    "description": "Collection country (ISO-3166 alpha-2) for a multi-country payin currency (CFA zones). Must be a valid collection country for the origin currency; omitted ⇒ the default collection country is used.",
                    "examples": [
                      "CI",
                      "SN",
                      "CM"
                    ]
                  },
                  "userData": {
                    "oneOf": [
                      {
                        "type": "object",
                        "properties": {
                          "userType": {
                            "type": "string",
                            "enum": [
                              "individual"
                            ]
                          },
                          "firstName": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 50,
                            "description": "First name of the user making the deposit (or representative for business)",
                            "examples": [
                              "John",
                              "Alice",
                              "Bob"
                            ]
                          },
                          "lastName": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "Last name of the user making the deposit (or representative for business)",
                            "examples": [
                              "Doe",
                              "Smith",
                              "Johnson"
                            ]
                          },
                          "userEmail": {
                            "type": "string",
                            "maxLength": 254,
                            "format": "email",
                            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                            "description": "Email of the user making the deposit",
                            "examples": [
                              "user@virtuabroker.com",
                              "john.doe@example.com",
                              "alice@example.com"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "maxLength": 150,
                            "description": "Address of the user making the deposit",
                            "examples": [
                              "123 Main St, Anytown, ES",
                              "456 Elm St, Anytown, ES",
                              "789 Oak St, Anytown, ES"
                            ]
                          },
                          "taxDocumentType": {
                            "type": "string",
                            "maxLength": 50,
                            "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                            "examples": [
                              "CC",
                              "NIT",
                              "CE",
                              "NIF",
                              "Other"
                            ]
                          },
                          "taxId": {
                            "type": "string",
                            "maxLength": 30,
                            "description": "Tax ID of the user making the deposit",
                            "examples": [
                              "123-45-6789",
                              "987-65-4321",
                              "111-22-3333"
                            ]
                          },
                          "country": {
                            "type": "string",
                            "enum": [
                              "US",
                              "CA",
                              "GB",
                              "DE",
                              "FR",
                              "AU",
                              "JP",
                              "KR",
                              "SE",
                              "NO",
                              "DK",
                              "FI",
                              "NL",
                              "BE",
                              "CH",
                              "AT",
                              "NZ",
                              "SG",
                              "IE",
                              "LU",
                              "PT",
                              "ES",
                              "IT",
                              "GR",
                              "CZ",
                              "PL",
                              "HU",
                              "SK",
                              "SI",
                              "EE",
                              "LT",
                              "LV",
                              "IS",
                              "MT",
                              "CY",
                              "HR",
                              "RO",
                              "BG",
                              "BR",
                              "AR",
                              "CL",
                              "MX",
                              "CO",
                              "PE",
                              "PA",
                              "UY",
                              "BO",
                              "ZA",
                              "NG",
                              "KE",
                              "GH",
                              "TZ",
                              "UG",
                              "RW",
                              "MW",
                              "ZM",
                              "BW",
                              "CD",
                              "CI",
                              "CM",
                              "IL",
                              "AE",
                              "QA",
                              "SA",
                              "OM",
                              "KW",
                              "BH",
                              "MY",
                              "PH",
                              "TH",
                              "VN",
                              "ID",
                              "IN",
                              "LK",
                              "NP",
                              "BD",
                              "PK",
                              "EG",
                              "MA",
                              "DZ",
                              "TN",
                              "JO",
                              "LB",
                              "TR",
                              "KH",
                              "MM",
                              "LA",
                              "EN",
                              "BT",
                              "VE",
                              "TW",
                              "HK",
                              "CN"
                            ],
                            "description": "Country code of the user making the deposit",
                            "examples": [
                              "ES",
                              "US",
                              "GB"
                            ]
                          },
                          "state": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "State of the user making the deposit",
                            "examples": [
                              "Madrid",
                              "New York",
                              "London"
                            ]
                          },
                          "postalCode": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 30,
                            "description": "Postal code of the user making the deposit",
                            "examples": [
                              "12345",
                              "67890",
                              "abcde"
                            ]
                          },
                          "city": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "City of the user making the deposit",
                            "examples": [
                              "Madrid",
                              "New York",
                              "London"
                            ]
                          },
                          "dob": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 30,
                            "description": "Date of birth of the user making the deposit",
                            "examples": [
                              "1990-01-01",
                              "1995-05-15",
                              "1988-12-31"
                            ]
                          },
                          "phoneNumber": {
                            "type": "string",
                            "maxLength": 30,
                            "description": "Phone number of the user making the deposit",
                            "examples": [
                              "+447700900123",
                              "+447700900456",
                              "+447700900789"
                            ]
                          },
                          "kycId": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 300,
                            "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                            "examples": [
                              "kyc-12345",
                              "kyc-67890",
                              "kyc-abcde"
                            ]
                          },
                          "activity": {
                            "type": "string",
                            "description": "Activity of the user making the deposit",
                            "examples": [
                              "worker",
                              "business",
                              "student"
                            ]
                          }
                        },
                        "required": [
                          "userType",
                          "firstName",
                          "userEmail",
                          "country"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "userType": {
                            "type": "string",
                            "enum": [
                              "business"
                            ]
                          },
                          "businessName": {
                            "type": "string",
                            "maxLength": 150,
                            "description": "Business name (required when userType is business)",
                            "examples": [
                              "Acme Corp",
                              "Tech Solutions Inc",
                              "Global Services Ltd"
                            ]
                          },
                          "firstName": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 50,
                            "description": "First name of the user making the deposit (or representative for business)",
                            "examples": [
                              "John",
                              "Alice",
                              "Bob"
                            ]
                          },
                          "userEmail": {
                            "type": "string",
                            "maxLength": 254,
                            "format": "email",
                            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                            "description": "Email of the user making the deposit",
                            "examples": [
                              "user@virtuabroker.com",
                              "john.doe@example.com",
                              "alice@example.com"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "maxLength": 150,
                            "description": "Address of the user making the deposit",
                            "examples": [
                              "123 Main St, Anytown, ES",
                              "456 Elm St, Anytown, ES",
                              "789 Oak St, Anytown, ES"
                            ]
                          },
                          "taxDocumentType": {
                            "type": "string",
                            "maxLength": 50,
                            "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                            "examples": [
                              "CC",
                              "NIT",
                              "CE",
                              "NIF",
                              "Other"
                            ]
                          },
                          "taxId": {
                            "type": "string",
                            "maxLength": 30,
                            "description": "Tax ID of the user making the deposit",
                            "examples": [
                              "123-45-6789",
                              "987-65-4321",
                              "111-22-3333"
                            ]
                          },
                          "country": {
                            "type": "string",
                            "enum": [
                              "US",
                              "CA",
                              "GB",
                              "DE",
                              "FR",
                              "AU",
                              "JP",
                              "KR",
                              "SE",
                              "NO",
                              "DK",
                              "FI",
                              "NL",
                              "BE",
                              "CH",
                              "AT",
                              "NZ",
                              "SG",
                              "IE",
                              "LU",
                              "PT",
                              "ES",
                              "IT",
                              "GR",
                              "CZ",
                              "PL",
                              "HU",
                              "SK",
                              "SI",
                              "EE",
                              "LT",
                              "LV",
                              "IS",
                              "MT",
                              "CY",
                              "HR",
                              "RO",
                              "BG",
                              "BR",
                              "AR",
                              "CL",
                              "MX",
                              "CO",
                              "PE",
                              "PA",
                              "UY",
                              "BO",
                              "ZA",
                              "NG",
                              "KE",
                              "GH",
                              "TZ",
                              "UG",
                              "RW",
                              "MW",
                              "ZM",
                              "BW",
                              "CD",
                              "CI",
                              "CM",
                              "IL",
                              "AE",
                              "QA",
                              "SA",
                              "OM",
                              "KW",
                              "BH",
                              "MY",
                              "PH",
                              "TH",
                              "VN",
                              "ID",
                              "IN",
                              "LK",
                              "NP",
                              "BD",
                              "PK",
                              "EG",
                              "MA",
                              "DZ",
                              "TN",
                              "JO",
                              "LB",
                              "TR",
                              "KH",
                              "MM",
                              "LA",
                              "EN",
                              "BT",
                              "VE",
                              "TW",
                              "HK",
                              "CN"
                            ],
                            "description": "Country code of the user making the deposit",
                            "examples": [
                              "ES",
                              "US",
                              "GB"
                            ]
                          },
                          "state": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "State of the user making the deposit",
                            "examples": [
                              "Madrid",
                              "New York",
                              "London"
                            ]
                          },
                          "postalCode": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 30,
                            "description": "Postal code of the user making the deposit",
                            "examples": [
                              "12345",
                              "67890",
                              "abcde"
                            ]
                          },
                          "city": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "City of the user making the deposit",
                            "examples": [
                              "Madrid",
                              "New York",
                              "London"
                            ]
                          },
                          "dob": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 30,
                            "description": "Date of birth of the user making the deposit",
                            "examples": [
                              "1990-01-01",
                              "1995-05-15",
                              "1988-12-31"
                            ]
                          },
                          "phoneNumber": {
                            "type": "string",
                            "maxLength": 30,
                            "description": "Phone number of the user making the deposit",
                            "examples": [
                              "+447700900123",
                              "+447700900456",
                              "+447700900789"
                            ]
                          },
                          "kycId": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 300,
                            "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                            "examples": [
                              "kyc-12345",
                              "kyc-67890",
                              "kyc-abcde"
                            ]
                          },
                          "activity": {
                            "type": "string",
                            "description": "Activity of the user making the deposit",
                            "examples": [
                              "worker",
                              "business",
                              "student"
                            ]
                          }
                        },
                        "required": [
                          "userType",
                          "businessName",
                          "firstName",
                          "userEmail",
                          "country"
                        ]
                      }
                    ],
                    "description": "Required when the quote origin is not BALANCE (payer). If the payer email is new, include address, city, postalCode, state, country, firstName, lastName, taxId, kycId for deposit provisioning."
                  },
                  "destinationUserData": {
                    "oneOf": [
                      {
                        "type": "object",
                        "properties": {
                          "userType": {
                            "type": "string",
                            "enum": [
                              "individual"
                            ]
                          },
                          "firstName": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 50,
                            "description": "First name of the user making the deposit (or representative for business)",
                            "examples": [
                              "John",
                              "Alice",
                              "Bob"
                            ]
                          },
                          "lastName": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "Last name of the user making the deposit (or representative for business)",
                            "examples": [
                              "Doe",
                              "Smith",
                              "Johnson"
                            ]
                          },
                          "userEmail": {
                            "type": "string",
                            "maxLength": 254,
                            "format": "email",
                            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                            "description": "Email of the user making the deposit",
                            "examples": [
                              "user@virtuabroker.com",
                              "john.doe@example.com",
                              "alice@example.com"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "maxLength": 150,
                            "description": "Address of the user making the deposit",
                            "examples": [
                              "123 Main St, Anytown, ES",
                              "456 Elm St, Anytown, ES",
                              "789 Oak St, Anytown, ES"
                            ]
                          },
                          "taxDocumentType": {
                            "type": "string",
                            "maxLength": 50,
                            "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                            "examples": [
                              "CC",
                              "NIT",
                              "CE",
                              "NIF",
                              "Other"
                            ]
                          },
                          "taxId": {
                            "type": "string",
                            "maxLength": 30,
                            "description": "Tax ID of the user making the deposit",
                            "examples": [
                              "123-45-6789",
                              "987-65-4321",
                              "111-22-3333"
                            ]
                          },
                          "country": {
                            "type": "string",
                            "enum": [
                              "US",
                              "CA",
                              "GB",
                              "DE",
                              "FR",
                              "AU",
                              "JP",
                              "KR",
                              "SE",
                              "NO",
                              "DK",
                              "FI",
                              "NL",
                              "BE",
                              "CH",
                              "AT",
                              "NZ",
                              "SG",
                              "IE",
                              "LU",
                              "PT",
                              "ES",
                              "IT",
                              "GR",
                              "CZ",
                              "PL",
                              "HU",
                              "SK",
                              "SI",
                              "EE",
                              "LT",
                              "LV",
                              "IS",
                              "MT",
                              "CY",
                              "HR",
                              "RO",
                              "BG",
                              "BR",
                              "AR",
                              "CL",
                              "MX",
                              "CO",
                              "PE",
                              "PA",
                              "UY",
                              "BO",
                              "ZA",
                              "NG",
                              "KE",
                              "GH",
                              "TZ",
                              "UG",
                              "RW",
                              "MW",
                              "ZM",
                              "BW",
                              "CD",
                              "CI",
                              "CM",
                              "IL",
                              "AE",
                              "QA",
                              "SA",
                              "OM",
                              "KW",
                              "BH",
                              "MY",
                              "PH",
                              "TH",
                              "VN",
                              "ID",
                              "IN",
                              "LK",
                              "NP",
                              "BD",
                              "PK",
                              "EG",
                              "MA",
                              "DZ",
                              "TN",
                              "JO",
                              "LB",
                              "TR",
                              "KH",
                              "MM",
                              "LA",
                              "EN",
                              "BT",
                              "VE",
                              "TW",
                              "HK",
                              "CN"
                            ],
                            "description": "Country code of the user making the deposit",
                            "examples": [
                              "ES",
                              "US",
                              "GB"
                            ]
                          },
                          "state": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "State of the user making the deposit",
                            "examples": [
                              "Madrid",
                              "New York",
                              "London"
                            ]
                          },
                          "postalCode": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 30,
                            "description": "Postal code of the user making the deposit",
                            "examples": [
                              "12345",
                              "67890",
                              "abcde"
                            ]
                          },
                          "city": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "City of the user making the deposit",
                            "examples": [
                              "Madrid",
                              "New York",
                              "London"
                            ]
                          },
                          "dob": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 30,
                            "description": "Date of birth of the user making the deposit",
                            "examples": [
                              "1990-01-01",
                              "1995-05-15",
                              "1988-12-31"
                            ]
                          },
                          "phoneNumber": {
                            "type": "string",
                            "maxLength": 30,
                            "description": "Phone number of the user making the deposit",
                            "examples": [
                              "+447700900123",
                              "+447700900456",
                              "+447700900789"
                            ]
                          },
                          "kycId": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 300,
                            "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                            "examples": [
                              "kyc-12345",
                              "kyc-67890",
                              "kyc-abcde"
                            ]
                          },
                          "activity": {
                            "type": "string",
                            "description": "Activity of the user making the deposit",
                            "examples": [
                              "worker",
                              "business",
                              "student"
                            ]
                          }
                        },
                        "required": [
                          "userType",
                          "firstName",
                          "userEmail",
                          "country"
                        ]
                      },
                      {
                        "type": "object",
                        "properties": {
                          "userType": {
                            "type": "string",
                            "enum": [
                              "business"
                            ]
                          },
                          "businessName": {
                            "type": "string",
                            "maxLength": 150,
                            "description": "Business name (required when userType is business)",
                            "examples": [
                              "Acme Corp",
                              "Tech Solutions Inc",
                              "Global Services Ltd"
                            ]
                          },
                          "firstName": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 50,
                            "description": "First name of the user making the deposit (or representative for business)",
                            "examples": [
                              "John",
                              "Alice",
                              "Bob"
                            ]
                          },
                          "userEmail": {
                            "type": "string",
                            "maxLength": 254,
                            "format": "email",
                            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                            "description": "Email of the user making the deposit",
                            "examples": [
                              "user@virtuabroker.com",
                              "john.doe@example.com",
                              "alice@example.com"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "maxLength": 150,
                            "description": "Address of the user making the deposit",
                            "examples": [
                              "123 Main St, Anytown, ES",
                              "456 Elm St, Anytown, ES",
                              "789 Oak St, Anytown, ES"
                            ]
                          },
                          "taxDocumentType": {
                            "type": "string",
                            "maxLength": 50,
                            "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                            "examples": [
                              "CC",
                              "NIT",
                              "CE",
                              "NIF",
                              "Other"
                            ]
                          },
                          "taxId": {
                            "type": "string",
                            "maxLength": 30,
                            "description": "Tax ID of the user making the deposit",
                            "examples": [
                              "123-45-6789",
                              "987-65-4321",
                              "111-22-3333"
                            ]
                          },
                          "country": {
                            "type": "string",
                            "enum": [
                              "US",
                              "CA",
                              "GB",
                              "DE",
                              "FR",
                              "AU",
                              "JP",
                              "KR",
                              "SE",
                              "NO",
                              "DK",
                              "FI",
                              "NL",
                              "BE",
                              "CH",
                              "AT",
                              "NZ",
                              "SG",
                              "IE",
                              "LU",
                              "PT",
                              "ES",
                              "IT",
                              "GR",
                              "CZ",
                              "PL",
                              "HU",
                              "SK",
                              "SI",
                              "EE",
                              "LT",
                              "LV",
                              "IS",
                              "MT",
                              "CY",
                              "HR",
                              "RO",
                              "BG",
                              "BR",
                              "AR",
                              "CL",
                              "MX",
                              "CO",
                              "PE",
                              "PA",
                              "UY",
                              "BO",
                              "ZA",
                              "NG",
                              "KE",
                              "GH",
                              "TZ",
                              "UG",
                              "RW",
                              "MW",
                              "ZM",
                              "BW",
                              "CD",
                              "CI",
                              "CM",
                              "IL",
                              "AE",
                              "QA",
                              "SA",
                              "OM",
                              "KW",
                              "BH",
                              "MY",
                              "PH",
                              "TH",
                              "VN",
                              "ID",
                              "IN",
                              "LK",
                              "NP",
                              "BD",
                              "PK",
                              "EG",
                              "MA",
                              "DZ",
                              "TN",
                              "JO",
                              "LB",
                              "TR",
                              "KH",
                              "MM",
                              "LA",
                              "EN",
                              "BT",
                              "VE",
                              "TW",
                              "HK",
                              "CN"
                            ],
                            "description": "Country code of the user making the deposit",
                            "examples": [
                              "ES",
                              "US",
                              "GB"
                            ]
                          },
                          "state": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "State of the user making the deposit",
                            "examples": [
                              "Madrid",
                              "New York",
                              "London"
                            ]
                          },
                          "postalCode": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 30,
                            "description": "Postal code of the user making the deposit",
                            "examples": [
                              "12345",
                              "67890",
                              "abcde"
                            ]
                          },
                          "city": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 100,
                            "description": "City of the user making the deposit",
                            "examples": [
                              "Madrid",
                              "New York",
                              "London"
                            ]
                          },
                          "dob": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 30,
                            "description": "Date of birth of the user making the deposit",
                            "examples": [
                              "1990-01-01",
                              "1995-05-15",
                              "1988-12-31"
                            ]
                          },
                          "phoneNumber": {
                            "type": "string",
                            "maxLength": 30,
                            "description": "Phone number of the user making the deposit",
                            "examples": [
                              "+447700900123",
                              "+447700900456",
                              "+447700900789"
                            ]
                          },
                          "kycId": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 300,
                            "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                            "examples": [
                              "kyc-12345",
                              "kyc-67890",
                              "kyc-abcde"
                            ]
                          },
                          "activity": {
                            "type": "string",
                            "description": "Activity of the user making the deposit",
                            "examples": [
                              "worker",
                              "business",
                              "student"
                            ]
                          }
                        },
                        "required": [
                          "userType",
                          "businessName",
                          "firstName",
                          "userEmail",
                          "country"
                        ]
                      }
                    ],
                    "description": "User data of the person/company that will receive the funds"
                  },
                  "destinationTransferData": {
                    "oneOf": [
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "BALANCE"
                            ]
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "Balance transfer details",
                        "title": "Balance"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "iban": {
                            "type": "string",
                            "description": "IBAN number"
                          },
                          "bic": {
                            "type": "string",
                            "description": "BIC number (optional)"
                          },
                          "country": {
                            "type": "string",
                            "description": "Country code"
                          },
                          "accountType": {
                            "type": "string",
                            "enum": [
                              "PERSONAL",
                              "BUSINESS"
                            ],
                            "default": "PERSONAL",
                            "description": "Account type (optional)"
                          },
                          "city": {
                            "type": "string",
                            "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                          },
                          "postalCode": {
                            "type": "string",
                            "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                          },
                          "address": {
                            "type": "string",
                            "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "SEPA"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "iban",
                          "country",
                          "type"
                        ],
                        "description": "SEPA transfer details",
                        "title": "SEPA"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "UK bank account number"
                          },
                          "sortCode": {
                            "type": "string",
                            "description": "UK sort code"
                          },
                          "country": {
                            "type": "string",
                            "enum": [
                              "GB"
                            ],
                            "default": "GB",
                            "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                          },
                          "accountType": {
                            "type": "string",
                            "enum": [
                              "PERSONAL",
                              "BUSINESS"
                            ],
                            "default": "PERSONAL",
                            "description": "Account type (optional)"
                          },
                          "city": {
                            "type": "string",
                            "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                          },
                          "postalCode": {
                            "type": "string",
                            "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                          },
                          "address": {
                            "type": "string",
                            "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "GBP_BANK_TRANSFER"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "accountNumber",
                          "sortCode",
                          "type"
                        ],
                        "description": "GBP domestic bank transfer details",
                        "title": "BankDepositGB"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "US bank account number"
                          },
                          "routingNumber": {
                            "type": "string",
                            "description": "US ABA routing number"
                          },
                          "country": {
                            "type": "string",
                            "enum": [
                              "US"
                            ],
                            "default": "US",
                            "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                          },
                          "accountType": {
                            "type": "string",
                            "enum": [
                              "PERSONAL",
                              "BUSINESS"
                            ],
                            "default": "PERSONAL",
                            "description": "Account type (optional)"
                          },
                          "bankAccountType": {
                            "type": "string",
                            "enum": [
                              "CHECKING",
                              "SAVINGS"
                            ],
                            "default": "CHECKING",
                            "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                          },
                          "city": {
                            "type": "string",
                            "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                          },
                          "postalCode": {
                            "type": "string",
                            "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                          },
                          "state": {
                            "type": "string",
                            "pattern": "^[A-Z]{2}$",
                            "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                          },
                          "address": {
                            "type": "string",
                            "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "ACH_US"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "accountNumber",
                          "routingNumber",
                          "state",
                          "type"
                        ],
                        "description": "USD ACH transfer details",
                        "title": "AchUS"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "linkedBankAccount"
                            ]
                          },
                          "accountLinkId": {
                            "type": "string",
                            "pattern": "^alnk_[0-9a-f]{24}$",
                            "description": "Identifier of one of the account holder own linked bank accounts",
                            "examples": [
                              "alnk_0123456789abcdef01234567"
                            ]
                          }
                        },
                        "required": [
                          "type",
                          "accountLinkId"
                        ],
                        "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                        "title": "LinkedBankAccount",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "ETH"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "ETH destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "ETH"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "MATIC"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "MATIC destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "MATIC"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "SOL"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "SOL destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "\\S"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "\\S"
                              }
                            }
                          }
                        ],
                        "title": "SOL"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "TRON"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "TRON destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "\\S"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "\\S"
                              }
                            }
                          }
                        ],
                        "title": "TRON"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "CELO"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "CELO destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "CELO"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "BTC"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "BTC destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "\\S"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "\\S"
                              }
                            }
                          }
                        ],
                        "title": "BTC"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "SOLANA"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "SOLANA destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "\\S"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "\\S"
                              }
                            }
                          }
                        ],
                        "title": "SOLANA"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "XRP"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "XRP destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "\\S"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "\\S"
                              }
                            }
                          }
                        ],
                        "title": "XRP"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "CARDANO"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "CARDANO destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "\\S"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "\\S"
                              }
                            }
                          }
                        ],
                        "title": "CARDANO"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "BSC"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "BSC destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "BSC"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "ARBITRUM"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "ARBITRUM destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "ARBITRUM"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "OPTIMISM"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "OPTIMISM destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "OPTIMISM"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "AVALANCHE"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "AVALANCHE destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "AVALANCHE"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "BASE"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "BASE destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "BASE"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_COL"
                            ]
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name)."
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "description": "Bank account type — CORRIENTE or AHORRO."
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "Recipient ID document number."
                          },
                          "destinationDocumentType": {
                            "type": "string",
                            "description": "Recipient ID document type — CC, CE, NIT, TI or PP."
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type",
                          "destinationBankCode",
                          "destinationBankAccountType",
                          "destinationDocumentType",
                          "destinationTaxId"
                        ],
                        "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                        "title": "Bank Deposit COL"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "brebKey": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Bre-B key (llave) that identifies the recipient account"
                          },
                          "email": {
                            "type": "string",
                            "description": "Recipient email (optional contact for the Bre-B rail)"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Recipient phone number (optional contact for the Bre-B rail)"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BRE_B_COP"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "brebKey",
                          "type"
                        ],
                        "description": "Colombian Bre-B payout details",
                        "title": "Bre-B COP"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "pattern": "^\\d{4}$",
                            "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                          },
                          "destinationBankAccountNumber": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Recipient bank account number"
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                          },
                          "destinationDocumentType": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Recipient ID document number"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "ACH_COP"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankCode",
                          "destinationBankAccountNumber",
                          "destinationBankAccountType",
                          "destinationDocumentType",
                          "destinationTaxId",
                          "type"
                        ],
                        "description": "Colombian ACH payout details",
                        "title": "ACH COP"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (unused for TWD — no network discovery)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "minLength": 2,
                            "description": "Bank name (required — TWD payouts run over SWIFT)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_TW"
                            ]
                          },
                          "destinationBankBranch": {
                            "type": "string",
                            "minLength": 2,
                            "description": "Bank branch (required — TWD payouts run over SWIFT)"
                          },
                          "bic": {
                            "type": "string",
                            "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                            "description": "SWIFT BIC code (required for TWD payouts)"
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "description": "Type of bank account (legacy, optional)"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "Tax ID of the recipient (legacy, optional)"
                          },
                          "destinationDocumentType": {
                            "type": "string",
                            "description": "Document type of the recipient (legacy, optional)"
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "destinationBankName",
                          "type",
                          "destinationBankBranch",
                          "bic"
                        ],
                        "description": "Taiwan bank deposit details (SWIFT payout)",
                        "title": "Bank Deposit TW"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "description": "Bank code"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationBankBranch": {
                            "type": "string",
                            "description": "Bank branch"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "Tax ID of the recipient"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_BR"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankCode",
                          "destinationBankAccount",
                          "destinationBankBranch",
                          "destinationTaxId",
                          "type"
                        ],
                        "description": "Brazilian bank deposit details",
                        "title": "Bank Deposit BR"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPixCode": {
                            "type": "string",
                            "description": "PIX code"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "Tax ID of the recipient"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "PIX_BR"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPixCode",
                          "destinationTaxId",
                          "type"
                        ],
                        "description": "Brazilian PIX details",
                        "title": "PIX BR"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccountNumber": {
                            "type": "string",
                            "description": "Bank account number"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Name of the bank"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                            "description": "Tax ID of the recipient"
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "description": "Type of bank account"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_VEN"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccountNumber",
                          "destinationBankName",
                          "destinationTaxId",
                          "destinationBankAccountType",
                          "type"
                        ],
                        "description": "Venezuelan bank deposit details",
                        "title": "Bank Deposit VEN"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "description": "Bank code"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                            "description": "Tax ID of the recipient"
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "description": "Type of bank account"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "PHONE_DEPOSIT_VEN"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankCode",
                          "destinationPhoneNumber",
                          "destinationTaxId",
                          "destinationBankAccountType",
                          "type"
                        ],
                        "description": "Venezuelan phone deposit details",
                        "title": "Phone Deposit VEN"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationIFSC": {
                            "type": "string",
                            "description": "IFSC code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_IN"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Bank Deposit IN",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationIFSC": {
                            "type": "string",
                            "description": "IFSC code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "IMPS"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "IMPS",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationIFSC": {
                            "type": "string",
                            "description": "IFSC code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "THAI_QR"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Thai QR",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationIFSC": {
                            "type": "string",
                            "description": "IFSC code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "VIET_QR"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Viet QR",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationIFSC": {
                            "type": "string",
                            "description": "IFSC code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "GCASH"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "GCash",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "Tax ID"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_PAYMENT_IN"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "destinationTaxId",
                          "type"
                        ],
                        "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Mobile Payment IN",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "description": "Bank code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_VN"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "destinationBankCode",
                          "type"
                        ],
                        "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Bank Deposit VN",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "bic": {
                            "type": "string",
                            "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "destinationAddress": {
                            "type": "string",
                            "description": "Address line 1 of the recipient"
                          },
                          "destinationCity": {
                            "type": "string",
                            "description": "Recipient city (defaults to Hong Kong)"
                          },
                          "accountHolderName": {
                            "type": "string",
                            "description": "Bank account holder name if different from payee"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_HK"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "bic",
                          "destinationBankName",
                          "destinationAddress",
                          "type"
                        ],
                        "description": "Hong Kong bank deposit details (HKD bank corridor)",
                        "title": "Bank Deposit HK"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "pattern": "^\\d+$",
                            "description": "CNAPS / bank institution code (numeric, variable length)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "destinationAddress": {
                            "type": "string",
                            "description": "Address line 1 of the recipient"
                          },
                          "destinationCity": {
                            "type": "string",
                            "description": "Recipient city"
                          },
                          "destinationState": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                          },
                          "destinationPostcode": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                          },
                          "destinationPhone": {
                            "type": "string",
                            "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                          },
                          "accountHolderName": {
                            "type": "string",
                            "description": "Bank account holder name if different from payee"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_CN"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "destinationBankCode",
                          "destinationBankName",
                          "destinationAddress",
                          "destinationCity",
                          "destinationState",
                          "destinationPostcode",
                          "type"
                        ],
                        "description": "China mainland bank deposit details (CNY bank corridor)",
                        "title": "Bank Deposit CN"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_AR"
                            ]
                          },
                          "destinationCBU": {
                            "type": "string",
                            "description": "CBU — 22-digit bank account key (legacy, optional)"
                          },
                          "destinationCVU": {
                            "type": "string",
                            "description": "CVU — 22-digit virtual account key (legacy, optional)"
                          },
                          "destinationAlias": {
                            "type": "string",
                            "description": "Account alias (legacy, optional)"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                          },
                          "destinationDocumentType": {
                            "type": "string",
                            "description": "Document type of the recipient (legacy, optional)"
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type",
                          "destinationTaxId"
                        ],
                        "description": "Argentinian bank deposit details",
                        "title": "Bank Deposit AR"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Recipient bank name (required for Chilean bank payouts)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_CL"
                            ]
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "minLength": 1,
                            "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                          },
                          "destinationDocumentType": {
                            "type": "string",
                            "description": "Document type of the recipient (legacy, optional)"
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "destinationBankName",
                          "type",
                          "destinationBankAccountType",
                          "destinationTaxId"
                        ],
                        "description": "Chilean bank deposit details",
                        "title": "Bank Deposit CL"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "minLength": 2,
                            "maxLength": 30,
                            "description": "Recipient name (required, 2–30 characters)"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 11,
                            "description": "Bank account number (max 11 digits for Bolivian accounts)"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (unused for BOB — no network discovery)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "maxLength": 20,
                            "description": "Bank name (optional, max 20 characters)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_BO"
                            ]
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 15,
                            "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type",
                          "destinationTaxId"
                        ],
                        "description": "Bolivian bank deposit details",
                        "title": "Bank Deposit BO"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_PE"
                            ]
                          },
                          "destinationCCI": {
                            "type": "string",
                            "description": "CCI — 20-digit interbank account code (legacy, optional)"
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "description": "Account type (corriente/ahorro) (legacy, optional)"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                          },
                          "destinationDocumentType": {
                            "type": "string",
                            "description": "Document type of the recipient (legacy, optional)"
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "destinationNetworkId",
                          "type"
                        ],
                        "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Bank Deposit PE",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "pattern": "^\\d{3}$",
                            "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                          },
                          "destinationBankAccountNumber": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 20,
                            "description": "Recipient bank account number (max 20)"
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "enum": [
                              "CORRIENTE",
                              "AHORROS",
                              "PHONE"
                            ],
                            "description": "Bank account type"
                          },
                          "destinationCCI": {
                            "type": "string",
                            "pattern": "^\\d{1,20}$",
                            "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                          },
                          "destinationDocumentType": {
                            "type": "string",
                            "enum": [
                              "CC",
                              "CE",
                              "RUC",
                              "PAS",
                              "PAR",
                              "LMI",
                              "OTHER"
                            ],
                            "description": "Recipient identification type"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 50,
                            "description": "Recipient identification number (max 50)"
                          },
                          "email": {
                            "type": "string",
                            "pattern": "^.+@.+\\..+$",
                            "description": "Recipient email (required for PEN payouts)"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "pattern": "^\\d{1,9}$",
                            "description": "Recipient phone number (required, max 9 digits)"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_PEN"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankCode",
                          "destinationBankAccountNumber",
                          "destinationBankAccountType",
                          "destinationCCI",
                          "destinationDocumentType",
                          "destinationTaxId",
                          "email",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Peruvian bank deposit details (bank-code payout corridor).",
                        "title": "Bank Deposit PEN"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_NG"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Nigeria bank deposit details",
                        "title": "Bank Deposit NG"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_KE"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Kenya bank deposit details",
                        "title": "Bank Deposit KE"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_GH"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Bank Deposit GH",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_ZA"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "South Africa bank deposit details",
                        "title": "Bank Deposit ZA"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_TZ"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Tanzania bank deposit details",
                        "title": "Bank Deposit TZ"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_UG"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Uganda bank deposit details",
                        "title": "Bank Deposit UG"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_RW"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Rwanda bank deposit details",
                        "title": "Bank Deposit RW"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_MW"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Malawi bank deposit details",
                        "title": "Bank Deposit MW"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_ZM"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Zambia bank deposit details",
                        "title": "Bank Deposit ZM"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_BW"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Botswana bank deposit details",
                        "title": "Bank Deposit BW"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_CD"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Bank Deposit CD",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_XOF"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "West African CFA bank deposit details",
                        "title": "Bank Deposit XOF"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_XAF"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Central African CFA bank deposit details",
                        "title": "Bank Deposit XAF"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_NG"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Nigeria mobile money details",
                        "title": "Mobile Money NG"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_KE"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Kenya mobile money details",
                        "title": "Mobile Money KE"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_GH"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Mobile Money GH",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_ZA"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "South Africa mobile money details",
                        "title": "Mobile Money ZA"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_TZ"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Tanzania mobile money details",
                        "title": "Mobile Money TZ"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_UG"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Uganda mobile money details",
                        "title": "Mobile Money UG"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_RW"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Rwanda mobile money details",
                        "title": "Mobile Money RW"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_MW"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Malawi mobile money details",
                        "title": "Mobile Money MW"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_ZM"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Zambia mobile money details",
                        "title": "Mobile Money ZM"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_BW"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Botswana mobile money details",
                        "title": "Mobile Money BW"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_CD"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Mobile Money CD",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_XOF"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "West African CFA mobile money details",
                        "title": "Mobile Money XOF"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_XAF"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Central African CFA mobile money details",
                        "title": "Mobile Money XAF"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "description": "Bank code"
                          },
                          "destinationBankAccountNumber": {
                            "type": "string",
                            "description": "Bank account number (18-digit CLABE)"
                          },
                          "numericReference": {
                            "type": "string",
                            "description": "Numeric reference"
                          },
                          "notesReference": {
                            "type": "string",
                            "description": "Notes reference"
                          },
                          "destinationClabe": {
                            "type": "string",
                            "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_MX"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccountNumber",
                          "type"
                        ],
                        "description": "Mexican bank deposit details",
                        "title": "Bank Deposit MX"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPseNumber": {
                            "type": "string",
                            "description": "PSE number"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "PSE"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPseNumber",
                          "type"
                        ],
                        "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "PSE",
                        "deprecated": true
                      }
                    ],
                    "description": "The details required for the end user destination transfer method."
                  },
                  "externalReference": {
                    "type": "string",
                    "description": "Your own reference for this order, echoed back on the order object",
                    "examples": [
                      "order-2026-000123"
                    ]
                  },
                  "integrationSessionId": {
                    "type": "string",
                    "pattern": "^int_[A-Za-z0-9]{16}$",
                    "description": "Integration session ID for partner attribution tracking",
                    "examples": [
                      "int_a1B2c3D4e5F6g7H8"
                    ]
                  },
                  "tradeDetails": {
                    "type": "object",
                    "properties": {
                      "businessType": {
                        "type": "string",
                        "enum": [
                          "GOODS_TRADE"
                        ]
                      },
                      "contractNo": {
                        "type": "string",
                        "minLength": 1
                      },
                      "website": {
                        "type": "string",
                        "format": "uri"
                      },
                      "products": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "name": {
                              "type": "string",
                              "minLength": 1
                            },
                            "quantity": {
                              "type": "number",
                              "minimum": 0,
                              "exclusiveMinimum": true
                            },
                            "unit": {
                              "type": "string",
                              "minLength": 1
                            },
                            "category": {
                              "type": "string",
                              "minLength": 1
                            }
                          },
                          "required": [
                            "name",
                            "quantity",
                            "unit"
                          ],
                          "additionalProperties": false
                        },
                        "minItems": 1
                      }
                    },
                    "required": [
                      "businessType",
                      "contractNo",
                      "products"
                    ],
                    "additionalProperties": false,
                    "description": "Trade context for regulated payout corridors that require a transaction document (e.g. CNY SAFE compliance): goods/services type, contract number, and itemised product list. Collected at order creation for bank-deposit CN orders."
                  }
                },
                "required": [
                  "quoteId"
                ],
                "additionalProperties": false,
                "description": "Create an order from a quote. userData (payer) is required unless the quote uses origin rail BALANCE.",
                "title": "Create Order with User Data"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful order creation",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "orderId": {
                      "type": "string",
                      "description": "ID of the order",
                      "examples": [
                        "01CLFXMT67II",
                        "2R7E5Y5KFXP8",
                        "4FWWRE3Y2URM"
                      ]
                    },
                    "deposit": {
                      "type": "object",
                      "properties": {
                        "depositId": {
                          "type": "string",
                          "minLength": 1,
                          "description": "ID of the deposit. Normally a 12-character internal id; deposits created before mid-2026 may carry a longer legacy id. Treat it as an opaque string."
                        },
                        "externalReference": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 128,
                          "description": "Your own reference for this deposit. Stored as-is and returned on create, detail and list, so you can look the deposit up by it after a network timeout instead of retrying blind. Not interpreted by VirtuaBroker and not shown to the payer — for the payer's transfer reference use depositInfo.referenceCode.",
                          "examples": [
                            "partner-ref-0001",
                            "inv_2026_00417"
                          ]
                        },
                        "userData": {
                          "oneOf": [
                            {
                              "type": "object",
                              "properties": {
                                "userType": {
                                  "type": "string",
                                  "enum": [
                                    "individual"
                                  ]
                                },
                                "firstName": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 50,
                                  "description": "First name of the user making the deposit (or representative for business)",
                                  "examples": [
                                    "John",
                                    "Alice",
                                    "Bob"
                                  ]
                                },
                                "lastName": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 100,
                                  "description": "Last name of the user making the deposit (or representative for business)",
                                  "examples": [
                                    "Doe",
                                    "Smith",
                                    "Johnson"
                                  ]
                                },
                                "userEmail": {
                                  "type": "string",
                                  "maxLength": 254,
                                  "format": "email",
                                  "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                  "description": "Email of the user making the deposit",
                                  "examples": [
                                    "user@virtuabroker.com",
                                    "john.doe@example.com",
                                    "alice@example.com"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "maxLength": 150,
                                  "description": "Address of the user making the deposit",
                                  "examples": [
                                    "123 Main St, Anytown, ES",
                                    "456 Elm St, Anytown, ES",
                                    "789 Oak St, Anytown, ES"
                                  ]
                                },
                                "taxDocumentType": {
                                  "type": "string",
                                  "maxLength": 50,
                                  "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                  "examples": [
                                    "CC",
                                    "NIT",
                                    "CE",
                                    "NIF",
                                    "Other"
                                  ]
                                },
                                "taxId": {
                                  "type": "string",
                                  "maxLength": 30,
                                  "description": "Tax ID of the user making the deposit",
                                  "examples": [
                                    "123-45-6789",
                                    "987-65-4321",
                                    "111-22-3333"
                                  ]
                                },
                                "country": {
                                  "type": "string",
                                  "enum": [
                                    "US",
                                    "CA",
                                    "GB",
                                    "DE",
                                    "FR",
                                    "AU",
                                    "JP",
                                    "KR",
                                    "SE",
                                    "NO",
                                    "DK",
                                    "FI",
                                    "NL",
                                    "BE",
                                    "CH",
                                    "AT",
                                    "NZ",
                                    "SG",
                                    "IE",
                                    "LU",
                                    "PT",
                                    "ES",
                                    "IT",
                                    "GR",
                                    "CZ",
                                    "PL",
                                    "HU",
                                    "SK",
                                    "SI",
                                    "EE",
                                    "LT",
                                    "LV",
                                    "IS",
                                    "MT",
                                    "CY",
                                    "HR",
                                    "RO",
                                    "BG",
                                    "BR",
                                    "AR",
                                    "CL",
                                    "MX",
                                    "CO",
                                    "PE",
                                    "PA",
                                    "UY",
                                    "BO",
                                    "ZA",
                                    "NG",
                                    "KE",
                                    "GH",
                                    "TZ",
                                    "UG",
                                    "RW",
                                    "MW",
                                    "ZM",
                                    "BW",
                                    "CD",
                                    "CI",
                                    "CM",
                                    "IL",
                                    "AE",
                                    "QA",
                                    "SA",
                                    "OM",
                                    "KW",
                                    "BH",
                                    "MY",
                                    "PH",
                                    "TH",
                                    "VN",
                                    "ID",
                                    "IN",
                                    "LK",
                                    "NP",
                                    "BD",
                                    "PK",
                                    "EG",
                                    "MA",
                                    "DZ",
                                    "TN",
                                    "JO",
                                    "LB",
                                    "TR",
                                    "KH",
                                    "MM",
                                    "LA",
                                    "EN",
                                    "BT",
                                    "VE",
                                    "TW",
                                    "HK",
                                    "CN"
                                  ],
                                  "description": "Country code of the user making the deposit",
                                  "examples": [
                                    "ES",
                                    "US",
                                    "GB"
                                  ]
                                },
                                "state": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 100,
                                  "description": "State of the user making the deposit",
                                  "examples": [
                                    "Madrid",
                                    "New York",
                                    "London"
                                  ]
                                },
                                "postalCode": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 30,
                                  "description": "Postal code of the user making the deposit",
                                  "examples": [
                                    "12345",
                                    "67890",
                                    "abcde"
                                  ]
                                },
                                "city": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 100,
                                  "description": "City of the user making the deposit",
                                  "examples": [
                                    "Madrid",
                                    "New York",
                                    "London"
                                  ]
                                },
                                "dob": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 30,
                                  "description": "Date of birth of the user making the deposit",
                                  "examples": [
                                    "1990-01-01",
                                    "1995-05-15",
                                    "1988-12-31"
                                  ]
                                },
                                "phoneNumber": {
                                  "type": "string",
                                  "maxLength": 30,
                                  "description": "Phone number of the user making the deposit",
                                  "examples": [
                                    "+447700900123",
                                    "+447700900456",
                                    "+447700900789"
                                  ]
                                },
                                "kycId": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 300,
                                  "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                  "examples": [
                                    "kyc-12345",
                                    "kyc-67890",
                                    "kyc-abcde"
                                  ]
                                },
                                "activity": {
                                  "type": "string",
                                  "description": "Activity of the user making the deposit",
                                  "examples": [
                                    "worker",
                                    "business",
                                    "student"
                                  ]
                                }
                              },
                              "required": [
                                "userType",
                                "firstName",
                                "userEmail",
                                "country"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "userType": {
                                  "type": "string",
                                  "enum": [
                                    "business"
                                  ]
                                },
                                "businessName": {
                                  "type": "string",
                                  "maxLength": 150,
                                  "description": "Business name (required when userType is business)",
                                  "examples": [
                                    "Acme Corp",
                                    "Tech Solutions Inc",
                                    "Global Services Ltd"
                                  ]
                                },
                                "firstName": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 50,
                                  "description": "First name of the user making the deposit (or representative for business)",
                                  "examples": [
                                    "John",
                                    "Alice",
                                    "Bob"
                                  ]
                                },
                                "userEmail": {
                                  "type": "string",
                                  "maxLength": 254,
                                  "format": "email",
                                  "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                  "description": "Email of the user making the deposit",
                                  "examples": [
                                    "user@virtuabroker.com",
                                    "john.doe@example.com",
                                    "alice@example.com"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "maxLength": 150,
                                  "description": "Address of the user making the deposit",
                                  "examples": [
                                    "123 Main St, Anytown, ES",
                                    "456 Elm St, Anytown, ES",
                                    "789 Oak St, Anytown, ES"
                                  ]
                                },
                                "taxDocumentType": {
                                  "type": "string",
                                  "maxLength": 50,
                                  "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                  "examples": [
                                    "CC",
                                    "NIT",
                                    "CE",
                                    "NIF",
                                    "Other"
                                  ]
                                },
                                "taxId": {
                                  "type": "string",
                                  "maxLength": 30,
                                  "description": "Tax ID of the user making the deposit",
                                  "examples": [
                                    "123-45-6789",
                                    "987-65-4321",
                                    "111-22-3333"
                                  ]
                                },
                                "country": {
                                  "type": "string",
                                  "enum": [
                                    "US",
                                    "CA",
                                    "GB",
                                    "DE",
                                    "FR",
                                    "AU",
                                    "JP",
                                    "KR",
                                    "SE",
                                    "NO",
                                    "DK",
                                    "FI",
                                    "NL",
                                    "BE",
                                    "CH",
                                    "AT",
                                    "NZ",
                                    "SG",
                                    "IE",
                                    "LU",
                                    "PT",
                                    "ES",
                                    "IT",
                                    "GR",
                                    "CZ",
                                    "PL",
                                    "HU",
                                    "SK",
                                    "SI",
                                    "EE",
                                    "LT",
                                    "LV",
                                    "IS",
                                    "MT",
                                    "CY",
                                    "HR",
                                    "RO",
                                    "BG",
                                    "BR",
                                    "AR",
                                    "CL",
                                    "MX",
                                    "CO",
                                    "PE",
                                    "PA",
                                    "UY",
                                    "BO",
                                    "ZA",
                                    "NG",
                                    "KE",
                                    "GH",
                                    "TZ",
                                    "UG",
                                    "RW",
                                    "MW",
                                    "ZM",
                                    "BW",
                                    "CD",
                                    "CI",
                                    "CM",
                                    "IL",
                                    "AE",
                                    "QA",
                                    "SA",
                                    "OM",
                                    "KW",
                                    "BH",
                                    "MY",
                                    "PH",
                                    "TH",
                                    "VN",
                                    "ID",
                                    "IN",
                                    "LK",
                                    "NP",
                                    "BD",
                                    "PK",
                                    "EG",
                                    "MA",
                                    "DZ",
                                    "TN",
                                    "JO",
                                    "LB",
                                    "TR",
                                    "KH",
                                    "MM",
                                    "LA",
                                    "EN",
                                    "BT",
                                    "VE",
                                    "TW",
                                    "HK",
                                    "CN"
                                  ],
                                  "description": "Country code of the user making the deposit",
                                  "examples": [
                                    "ES",
                                    "US",
                                    "GB"
                                  ]
                                },
                                "state": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 100,
                                  "description": "State of the user making the deposit",
                                  "examples": [
                                    "Madrid",
                                    "New York",
                                    "London"
                                  ]
                                },
                                "postalCode": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 30,
                                  "description": "Postal code of the user making the deposit",
                                  "examples": [
                                    "12345",
                                    "67890",
                                    "abcde"
                                  ]
                                },
                                "city": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 100,
                                  "description": "City of the user making the deposit",
                                  "examples": [
                                    "Madrid",
                                    "New York",
                                    "London"
                                  ]
                                },
                                "dob": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 30,
                                  "description": "Date of birth of the user making the deposit",
                                  "examples": [
                                    "1990-01-01",
                                    "1995-05-15",
                                    "1988-12-31"
                                  ]
                                },
                                "phoneNumber": {
                                  "type": "string",
                                  "maxLength": 30,
                                  "description": "Phone number of the user making the deposit",
                                  "examples": [
                                    "+447700900123",
                                    "+447700900456",
                                    "+447700900789"
                                  ]
                                },
                                "kycId": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 300,
                                  "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                  "examples": [
                                    "kyc-12345",
                                    "kyc-67890",
                                    "kyc-abcde"
                                  ]
                                },
                                "activity": {
                                  "type": "string",
                                  "description": "Activity of the user making the deposit",
                                  "examples": [
                                    "worker",
                                    "business",
                                    "student"
                                  ]
                                }
                              },
                              "required": [
                                "userType",
                                "businessName",
                                "firstName",
                                "userEmail",
                                "country"
                              ]
                            }
                          ],
                          "description": "User data of the person/company making the deposit",
                          "examples": [
                            {
                              "userType": "individual",
                              "firstName": "John",
                              "lastName": "Doe",
                              "userEmail": "user@virtuabroker.com",
                              "address": "123 Main St, Anytown, ES",
                              "taxId": "123-45-6789",
                              "country": "ES"
                            },
                            {
                              "userType": "individual",
                              "firstName": "Alice",
                              "lastName": "Smith",
                              "userEmail": "alice@example.com",
                              "address": "456 Elm St, Anytown, ES",
                              "taxId": "987-65-4321",
                              "country": "ES"
                            }
                          ]
                        },
                        "createdAt": {
                          "type": "number",
                          "description": "Creation time of the deposit",
                          "examples": [
                            1723027132,
                            1723027133,
                            1723027134
                          ]
                        },
                        "rail": {
                          "type": "string",
                          "enum": [
                            "BALANCE",
                            "SEPA",
                            "BTC",
                            "ETH",
                            "MATIC",
                            "POLYGON",
                            "CELO",
                            "TRON",
                            "SOLANA",
                            "ARBITRUM",
                            "OPTIMISM",
                            "AVALANCHE",
                            "BSC",
                            "BASE",
                            "XRP",
                            "PIX_BR",
                            "UPI",
                            "IMPS",
                            "TRY_BANK_TRANSFER",
                            "AED_BANK_TRANSFER",
                            "SPEI",
                            "IDR_BANK_TRANSFER",
                            "CREDIT_CARD",
                            "THAI_QR",
                            "VIET_QR",
                            "GCASH",
                            "ARGENTINA_BANK_TRANSFER",
                            "PSE",
                            "CLABE",
                            "PIX",
                            "BANK_DEPOSIT_COL",
                            "BANK_DEPOSIT_AR",
                            "BANK_DEPOSIT_CL",
                            "BANK_DEPOSIT_PE",
                            "BANK_DEPOSIT_BO",
                            "BANK_DEPOSIT_BR",
                            "BANK_DEPOSIT_NG",
                            "BANK_DEPOSIT_KE",
                            "BANK_DEPOSIT_GH",
                            "BANK_DEPOSIT_ZA",
                            "BANK_DEPOSIT_TZ",
                            "BANK_DEPOSIT_UG",
                            "BANK_DEPOSIT_RW",
                            "BANK_DEPOSIT_MW",
                            "BANK_DEPOSIT_ZM",
                            "BANK_DEPOSIT_BW",
                            "BANK_DEPOSIT_CD",
                            "BANK_DEPOSIT_XOF",
                            "BANK_DEPOSIT_XAF",
                            "MOBILE_MONEY_NG",
                            "MOBILE_MONEY_KE",
                            "MOBILE_MONEY_GH",
                            "MOBILE_MONEY_ZA",
                            "MOBILE_MONEY_TZ",
                            "MOBILE_MONEY_UG",
                            "MOBILE_MONEY_RW",
                            "MOBILE_MONEY_MW",
                            "MOBILE_MONEY_ZM",
                            "MOBILE_MONEY_BW",
                            "MOBILE_MONEY_CD",
                            "MOBILE_MONEY_XOF",
                            "MOBILE_MONEY_XAF",
                            "ACH_US",
                            "GBP_BANK_TRANSFER"
                          ],
                          "description": "Rail of the deposit"
                        },
                        "receivedAt": {
                          "type": "number",
                          "description": "Unix ms timestamp of when the funds for this deposit ARRIVED — recorded when the incoming payment is matched to the deposit, which is before it is credited. Present whenever funds have arrived, including a deposit whose funds are still held in review; omitted entirely when no funds ever arrived, so a never-funded or cancelled deposit has no value here and its presence is a reliable settlement signal for reconciliation. Identical on GET /v1/deposits and GET /v1/deposits/{depositId}. Note that the deposit object embedded in order and operation responses does not yet apply this rule — it returns the stored value. Not the creation time — use createdAt for that.",
                          "examples": [
                            1723027132000,
                            1723027133000,
                            1723027134000
                          ]
                        },
                        "expectedAmount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Amount expected of the deposit",
                          "examples": [
                            1000,
                            2000,
                            3000
                          ]
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Amount received of the deposit",
                          "examples": [
                            1000,
                            2000,
                            3000
                          ]
                        },
                        "currency": {
                          "anyOf": [
                            {
                              "type": "string",
                              "enum": [
                                "EUR",
                                "USD",
                                "GBP",
                                "BRL",
                                "MXN",
                                "ARS",
                                "COP",
                                "PEN",
                                "NGN",
                                "KES",
                                "TZS",
                                "UGX",
                                "RWF",
                                "MWK",
                                "ZMW",
                                "XOF",
                                "XAF",
                                "BWP"
                              ]
                            },
                            {
                              "type": "string",
                              "enum": [
                                "USDC",
                                "USDT",
                                "CUSD",
                                "BTC",
                                "ETH",
                                "POL",
                                "SOL",
                                "TRX",
                                "AVAX",
                                "XRP",
                                "BNB"
                              ]
                            }
                          ],
                          "description": "Currency of the deposit",
                          "examples": [
                            "EUR",
                            "BRL"
                          ]
                        },
                        "fee": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Fee for the deposit. This value is written once the deposit has been executed. Meanwhile it will appear 0.",
                          "example": 10
                        },
                        "expectedFee": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Fee for the deposit. This value is correlated with the expected amount for the deposit.",
                          "examples": [
                            10,
                            20,
                            30
                          ]
                        },
                        "feeCurrency": {
                          "anyOf": [
                            {
                              "type": "string",
                              "enum": [
                                "EUR",
                                "USD",
                                "GBP",
                                "BRL",
                                "MXN",
                                "ARS",
                                "COP",
                                "PEN",
                                "NGN",
                                "KES",
                                "TZS",
                                "UGX",
                                "RWF",
                                "MWK",
                                "ZMW",
                                "XOF",
                                "XAF",
                                "BWP"
                              ]
                            },
                            {
                              "type": "string",
                              "enum": [
                                "USDC",
                                "USDT",
                                "CUSD",
                                "BTC",
                                "ETH",
                                "POL",
                                "SOL",
                                "TRX",
                                "AVAX",
                                "XRP",
                                "BNB"
                              ]
                            }
                          ],
                          "description": "Currency of the fee",
                          "examples": [
                            "EUR",
                            "BRL"
                          ]
                        },
                        "status": {
                          "anyOf": [
                            {
                              "type": "string",
                              "enum": [
                                "Pending",
                                "Processing",
                                "Success",
                                "Failed",
                                "Canceled",
                                "Reviewing"
                              ],
                              "description": "Common status values that are shared across all operation types",
                              "examples": [
                                "Pending",
                                "Processing",
                                "Success",
                                "Failed",
                                "Canceled",
                                "Reviewing"
                              ]
                            },
                            {
                              "type": "string",
                              "enum": [
                                "PendingCancel",
                                "Received"
                              ]
                            }
                          ],
                          "description": "Status of the deposit",
                          "examples": [
                            "Pending",
                            "Success",
                            "Failed",
                            "Received",
                            "PendingCancel"
                          ]
                        },
                        "depositInfo": {
                          "oneOf": [
                            {
                              "type": "object",
                              "properties": {
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Name of the account holder",
                                  "example": "John Doe"
                                },
                                "iban": {
                                  "type": "string",
                                  "description": "SEPA Bank Account Number",
                                  "example": "DE8937XXXXXXXXXXXX3000"
                                },
                                "bic": {
                                  "type": "string",
                                  "description": "Bank BIC/SWIFT code",
                                  "example": "DEUTDEFF"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Name of the bank",
                                  "example": "Deutsche Bank"
                                },
                                "bankAddress": {
                                  "type": "string",
                                  "description": "Address of the bank",
                                  "example": "Taunusanlage 12"
                                },
                                "bankCity": {
                                  "type": "string",
                                  "description": "City of the bank",
                                  "example": "Frankfurt am Main"
                                },
                                "bankZipcode": {
                                  "type": "string",
                                  "description": "Zipcode of the bank",
                                  "example": "60325"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "enum": [
                                    "US",
                                    "CA",
                                    "GB",
                                    "DE",
                                    "FR",
                                    "AU",
                                    "JP",
                                    "KR",
                                    "SE",
                                    "NO",
                                    "DK",
                                    "FI",
                                    "NL",
                                    "BE",
                                    "CH",
                                    "AT",
                                    "NZ",
                                    "SG",
                                    "IE",
                                    "LU",
                                    "PT",
                                    "ES",
                                    "IT",
                                    "GR",
                                    "CZ",
                                    "PL",
                                    "HU",
                                    "SK",
                                    "SI",
                                    "EE",
                                    "LT",
                                    "LV",
                                    "IS",
                                    "MT",
                                    "CY",
                                    "HR",
                                    "RO",
                                    "BG",
                                    "BR",
                                    "AR",
                                    "CL",
                                    "MX",
                                    "CO",
                                    "PE",
                                    "PA",
                                    "UY",
                                    "BO",
                                    "ZA",
                                    "NG",
                                    "KE",
                                    "GH",
                                    "TZ",
                                    "UG",
                                    "RW",
                                    "MW",
                                    "ZM",
                                    "BW",
                                    "CD",
                                    "CI",
                                    "CM",
                                    "IL",
                                    "AE",
                                    "QA",
                                    "SA",
                                    "OM",
                                    "KW",
                                    "BH",
                                    "MY",
                                    "PH",
                                    "TH",
                                    "VN",
                                    "ID",
                                    "IN",
                                    "LK",
                                    "NP",
                                    "BD",
                                    "PK",
                                    "EG",
                                    "MA",
                                    "DZ",
                                    "TN",
                                    "JO",
                                    "LB",
                                    "TR",
                                    "KH",
                                    "MM",
                                    "LA",
                                    "EN",
                                    "BT",
                                    "VE",
                                    "TW",
                                    "HK",
                                    "CN"
                                  ],
                                  "description": "Country of the bank",
                                  "example": "DE"
                                },
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "SEPA"
                                  ]
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount. It can be 0 for open-amount bank transfers where the sender chooses the final amount from their bank.",
                                  "example": 1000
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order. The user must include this code when making the deposit to ensure accurate processing. In cases where the reference code is incorrect or missing, we manually match orders based on the sender's name and other available details. In case the deposit is not matched, we will mark the order as Reviewing and the system will require manual attention.",
                                  "example": "REF123456"
                                },
                                "extraDepositMethods": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "methodType": {
                                        "type": "string",
                                        "enum": [
                                          "HOSTED_CHECKOUT"
                                        ],
                                        "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                                      },
                                      "url": {
                                        "type": "string",
                                        "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                                        "example": "https://checkout.example.com/pay/abc123"
                                      },
                                      "callbackUrl": {
                                        "type": "string",
                                        "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                                      },
                                      "referenceCode": {
                                        "type": "string",
                                        "description": "Payment reference for this method (equals the deposit/order reference)"
                                      },
                                      "amount": {
                                        "type": "number",
                                        "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                                      },
                                      "currency": {
                                        "type": "string",
                                        "description": "Currency of this method"
                                      },
                                      "expiresAt": {
                                        "type": "number",
                                        "description": "Unix ms after which `url` is no longer valid, when known"
                                      }
                                    },
                                    "required": [
                                      "methodType",
                                      "url"
                                    ],
                                    "description": "An additional, optional way to pay this deposit"
                                  },
                                  "description": "Additional, optional ways to pay this same deposit (e.g. a hosted card page). The bank details above remain the primary method; ignore this field if you only support bank transfer."
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ],
                              "description": "Detailed information about a bank deposit, including the amount and a unique reference code for identification."
                            },
                            {
                              "type": "object",
                              "properties": {
                                "address": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Crypto wallet address",
                                  "example": "0x1A2b3C4d5E6f7890AbCdEf1234567890AbCdEf12"
                                },
                                "network": {
                                  "type": "string",
                                  "enum": [
                                    "MATIC",
                                    "ETH",
                                    "CELO",
                                    "TRON",
                                    "BTC",
                                    "SOLANA",
                                    "XRP",
                                    "CARDANO",
                                    "BSC",
                                    "ARBITRUM",
                                    "OPTIMISM",
                                    "AVALANCHE",
                                    "BASE"
                                  ],
                                  "description": "Network for the deposit for crypto deposits",
                                  "examples": [
                                    "ETH",
                                    "MATIC",
                                    "CELO"
                                  ]
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Optional memo for the transaction",
                                  "example": "Payment for services"
                                },
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "CRYPTO"
                                  ]
                                },
                                "qrCode": {
                                  "type": "string",
                                  "description": "Base64-encoded QR image for the deposit address",
                                  "example": "iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAIAAADTED8xAAABpklEQVR42u3BAQ0AAADCoPdPbQ8HFAAAAAAAAAAAAAAAAAA..."
                                },
                                "qrCodeUrl": {
                                  "type": "string",
                                  "format": "uri",
                                  "description": "7-day signed GCS URL of the QR code PNG"
                                },
                                "qrCodeExpiresAt": {
                                  "type": "number",
                                  "description": "Unix timestamp (ms) when qrCodeUrl expires"
                                },
                                "receivingAddress": {
                                  "type": "string",
                                  "description": "The wallet address where funds should be sent",
                                  "example": "0xAbCdEf0123456789AbCdEf0123456789AbCdEf01"
                                },
                                "tokenContract": {
                                  "type": "string",
                                  "description": "The ERC20 token contract address",
                                  "example": "0x765DE816845861e75A25fCA122bb6898B8B1282a"
                                },
                                "decimals": {
                                  "type": "number",
                                  "description": "Token decimals (default 18)",
                                  "example": 18
                                }
                              },
                              "required": [
                                "address",
                                "network",
                                "depositType"
                              ],
                              "description": "Crypto Deposit Information"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "base64QRCode": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Base64 encoded QR code",
                                  "example": "base64QRCode"
                                },
                                "qrCodeString": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "The Pix copy-and-paste code (BR Code payload) the payer pastes into their bank app. Pass it through unchanged — it carries its own checksum.",
                                  "example": "qrCodeString"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order",
                                  "example": "REF123456"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "exclusiveMinimum": true,
                                  "description": "The monetary value to be deposited into the bank. This amount should be positive and accurately reflect the intended deposit.",
                                  "example": 1000
                                },
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "PIX"
                                  ]
                                }
                              },
                              "required": [
                                "base64QRCode",
                                "qrCodeString",
                                "referenceCode",
                                "amount",
                                "depositType"
                              ],
                              "description": "Pix Deposit Information"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "CREDIT_CARD"
                                  ]
                                }
                              },
                              "required": [
                                "depositType"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "bankName": {
                                  "type": "string",
                                  "description": "Name of the bank (present when the rail provides it)"
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Name of the account holder (present when the rail provides it)"
                                },
                                "clabe": {
                                  "type": "string",
                                  "description": "CLABE number"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Bank account number (e.g. from the BANK_TRANSFER payment method)"
                                },
                                "reference": {
                                  "type": "string",
                                  "description": "Payment reference (e.g. from the BANK_TRANSFER payment method)"
                                },
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "CLABE"
                                  ],
                                  "description": "Type of the deposit"
                                }
                              },
                              "required": [
                                "clabe",
                                "depositType"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "url": {
                                  "type": "string",
                                  "description": "URL of the PSE payment"
                                },
                                "amountPrefilled": {
                                  "type": "boolean",
                                  "description": "Whether the payment page already carries the amount. When false or absent, the payer must enter it."
                                },
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "PSE"
                                  ],
                                  "description": "Type of the deposit"
                                }
                              },
                              "required": [
                                "url",
                                "depositType"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BALANCE"
                                  ]
                                }
                              },
                              "required": [
                                "depositType"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "PENDING"
                                  ]
                                },
                                "currency": {
                                  "type": "string",
                                  "description": "Currency of the deposit"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the order/deposit"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount. It can be 0 while bank transfer details are open-amount or still being provisioned."
                                },
                                "extraDepositMethods": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "methodType": {
                                        "type": "string",
                                        "enum": [
                                          "HOSTED_CHECKOUT"
                                        ],
                                        "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                                      },
                                      "url": {
                                        "type": "string",
                                        "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                                        "example": "https://checkout.example.com/pay/abc123"
                                      },
                                      "callbackUrl": {
                                        "type": "string",
                                        "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                                      },
                                      "referenceCode": {
                                        "type": "string",
                                        "description": "Payment reference for this method (equals the deposit/order reference)"
                                      },
                                      "amount": {
                                        "type": "number",
                                        "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                                      },
                                      "currency": {
                                        "type": "string",
                                        "description": "Currency of this method"
                                      },
                                      "expiresAt": {
                                        "type": "number",
                                        "description": "Unix ms after which `url` is no longer valid, when known"
                                      }
                                    },
                                    "required": [
                                      "methodType",
                                      "url"
                                    ],
                                    "description": "An additional, optional way to pay this deposit"
                                  },
                                  "description": "Additional ways to pay while the bank details are being provisioned (e.g. a hosted card page). Optional — ignore it and wait for the bank details if you only support bank transfer."
                                },
                                "pendingReason": {
                                  "type": "string",
                                  "enum": [
                                    "collection_account_activating",
                                    "accountless_per_account_corridor"
                                  ],
                                  "description": "Why the instructions are still being provisioned, when the reason is known. `collection_account_activating` means the collection account for this payer is being activated and payable details are expected shortly. `accountless_per_account_corridor` means this corridor collects only into a collection account dedicated to the paying account, this request names no account, and none can be created for it — so payable details will NOT arrive by waiting; create the deposit against an account instead. Absence never conveys timing on either surface: here it means only that no reason is classifiable, and an account-level deposit-method instruction never carries the field at all. Treat the values as an open set and ignore any you do not recognise."
                                }
                              },
                              "required": [
                                "depositType",
                                "currency",
                                "referenceCode",
                                "amount"
                              ],
                              "description": "Deposit details are being provisioned; poll the order/deposit or wait for webhook"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "IMPS"
                                  ]
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Name of the bank"
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Name of the account holder"
                                },
                                "ifsc": {
                                  "type": "string",
                                  "description": "ifsc number"
                                },
                                "type": {
                                  "type": "string",
                                  "description": "Type of the deposit"
                                },
                                "branch": {
                                  "type": "string",
                                  "description": "Branch of the bank"
                                },
                                "bank": {
                                  "type": "string",
                                  "description": "Bank of the account"
                                },
                                "otp": {
                                  "type": "string",
                                  "description": "OTP of the deposit"
                                },
                                "bankNotes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "number",
                                        "description": "Type of note: -1 for warning, 1 for info"
                                      },
                                      "msg": {
                                        "type": "string",
                                        "description": "Message content"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "msg"
                                    ]
                                  },
                                  "description": "Additional bank instructions"
                                }
                              },
                              "required": [
                                "depositType",
                                "accountNumber",
                                "bankName",
                                "accountHolder",
                                "ifsc",
                                "type",
                                "branch",
                                "bank",
                                "otp"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "UPI"
                                  ]
                                },
                                "vpa": {
                                  "type": "string",
                                  "description": "Virtual Payment Address"
                                },
                                "name": {
                                  "type": "string",
                                  "description": "Name of the account holder"
                                },
                                "otp": {
                                  "type": "string",
                                  "description": "OTP for the transaction"
                                },
                                "paymentLink": {
                                  "type": "string",
                                  "description": "Payment link"
                                },
                                "upiNotes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "number",
                                        "description": "Type of note: -1 for warning, 1 for info"
                                      },
                                      "msg": {
                                        "type": "string",
                                        "description": "Message content"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "msg"
                                    ]
                                  },
                                  "description": "Additional UPI instructions"
                                }
                              },
                              "required": [
                                "depositType",
                                "vpa",
                                "name",
                                "otp",
                                "paymentLink"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "AED_BANK_TRANSFER"
                                  ]
                                },
                                "iban": {
                                  "type": "string",
                                  "description": "International Bank Account Number"
                                },
                                "name": {
                                  "type": "string",
                                  "description": "Name of the account holder"
                                },
                                "bank": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "type": {
                                  "type": "string",
                                  "description": "Account type"
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Bank address"
                                },
                                "email": {
                                  "type": "string",
                                  "description": "Contact email"
                                },
                                "phoneNumber": {
                                  "type": "string",
                                  "description": "Contact phone number"
                                },
                                "transferCode": {
                                  "type": "string",
                                  "description": "Transfer code"
                                },
                                "poBox": {
                                  "type": "string",
                                  "description": "P.O. Box"
                                },
                                "otp": {
                                  "type": "string",
                                  "description": "OTP for the transaction"
                                },
                                "bankNotes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "number",
                                        "description": "Type of note: -1 for warning, 1 for info"
                                      },
                                      "msg": {
                                        "type": "string",
                                        "description": "Message content"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "msg"
                                    ]
                                  },
                                  "description": "Additional bank instructions"
                                }
                              },
                              "required": [
                                "depositType",
                                "iban",
                                "name",
                                "bank",
                                "type",
                                "address",
                                "email",
                                "phoneNumber",
                                "transferCode",
                                "poBox",
                                "otp"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "SPEI"
                                  ]
                                },
                                "clabe": {
                                  "type": "string",
                                  "description": "CLABE number"
                                },
                                "name": {
                                  "type": "string",
                                  "description": "Name of the account holder"
                                },
                                "bank": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankNotes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "number",
                                        "description": "Type of note: -1 for warning, 1 for info"
                                      },
                                      "msg": {
                                        "type": "string",
                                        "description": "Message content"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "msg"
                                    ]
                                  },
                                  "description": "Additional bank instructions"
                                }
                              },
                              "required": [
                                "depositType",
                                "clabe",
                                "name",
                                "bank"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "TRY_BANK_TRANSFER"
                                  ]
                                },
                                "iban": {
                                  "type": "string",
                                  "description": "International Bank Account Number"
                                },
                                "name": {
                                  "type": "string",
                                  "description": "Name of the account holder"
                                },
                                "bank": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "otp": {
                                  "type": "string",
                                  "description": "OTP for the transaction"
                                },
                                "bankNotes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "number",
                                        "description": "Type of note: -1 for warning, 1 for info"
                                      },
                                      "msg": {
                                        "type": "string",
                                        "description": "Message content"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "msg"
                                    ]
                                  },
                                  "description": "Additional bank instructions"
                                }
                              },
                              "required": [
                                "depositType",
                                "iban",
                                "name",
                                "bank",
                                "otp"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "IDR_BANK_TRANSFER"
                                  ]
                                },
                                "virtualAccount": {
                                  "type": "string",
                                  "description": "Virtual account number"
                                },
                                "name": {
                                  "type": "string",
                                  "description": "Name of the account holder"
                                },
                                "bank": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankNotes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "number",
                                        "description": "Type of note: -1 for warning, 1 for info"
                                      },
                                      "msg": {
                                        "type": "string",
                                        "description": "Message content"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "msg"
                                    ]
                                  },
                                  "description": "Additional bank instructions"
                                }
                              },
                              "required": [
                                "depositType",
                                "virtualAccount",
                                "name",
                                "bank"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "THAI_QR"
                                  ]
                                },
                                "qrCode": {
                                  "type": "string",
                                  "description": "QR code"
                                },
                                "otp": {
                                  "type": "string",
                                  "description": "OTP for the transaction"
                                },
                                "bankNotes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "number",
                                        "description": "Type of note: -1 for warning, 1 for info"
                                      },
                                      "msg": {
                                        "type": "string",
                                        "description": "Message content"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "msg"
                                    ]
                                  },
                                  "description": "Additional bank instructions"
                                }
                              },
                              "required": [
                                "depositType",
                                "qrCode",
                                "otp"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "VIET_QR"
                                  ]
                                },
                                "qrCode": {
                                  "type": "string",
                                  "description": "QR code"
                                },
                                "otp": {
                                  "type": "string",
                                  "description": "OTP for the transaction"
                                },
                                "bankNotes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "number",
                                        "description": "Type of note: -1 for warning, 1 for info"
                                      },
                                      "msg": {
                                        "type": "string",
                                        "description": "Message content"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "msg"
                                    ]
                                  },
                                  "description": "Additional bank instructions"
                                }
                              },
                              "required": [
                                "depositType",
                                "qrCode",
                                "otp"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "GCASH"
                                  ]
                                },
                                "qrCode": {
                                  "type": "string",
                                  "description": "QR code"
                                },
                                "otp": {
                                  "type": "string",
                                  "description": "OTP for the transaction"
                                },
                                "bankNotes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "number",
                                        "description": "Type of note: -1 for warning, 1 for info"
                                      },
                                      "msg": {
                                        "type": "string",
                                        "description": "Message content"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "msg"
                                    ]
                                  },
                                  "description": "Additional bank instructions"
                                }
                              },
                              "required": [
                                "depositType",
                                "qrCode",
                                "otp"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "ARGENTINA_BANK_TRANSFER"
                                  ]
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Account number"
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "accountNumber"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "ACH_US"
                                  ]
                                },
                                "routingNumber": {
                                  "type": "string",
                                  "description": "US bank ABA routing number"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "US bank account number"
                                },
                                "beneficiaryName": {
                                  "type": "string",
                                  "description": "Beneficiary name on the account"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Name of the bank"
                                },
                                "bankAddress": {
                                  "type": "string",
                                  "description": "Address of the bank"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names (e.g. ACH, Wire)"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount in USD"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Reference code to include in the wire/ACH transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "routingNumber",
                                "accountNumber",
                                "beneficiaryName",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "ACH_PULL"
                                  ]
                                }
                              },
                              "required": [
                                "depositType"
                              ],
                              "description": "Funds are pulled from the holder's own linked US bank account; no transfer instructions apply"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "LOCALBANK"
                                  ],
                                  "description": "Deprecated generic local-bank payin type. Superseded by the corridor-specific deposit types (e.g. SEPA, ACH_US, GBP_BANK_TRANSFER, CLABE/SPEI, PIX, ARGENTINA_BANK_TRANSFER, BANK_DEPOSIT_<CC>). Still returned on some corridors and on historical records, so integrators must continue to handle it. Discover the applicable per-currency method via GET /v1/currencies/{currency}/payin-schema.",
                                  "deprecated": true
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "GBP_BANK_TRANSFER"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "UK bank account number"
                                },
                                "sortCode": {
                                  "type": "string",
                                  "description": "UK sort code"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Name of the bank"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names (e.g. Faster Payments, CHAPS, BACS)"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount in GBP"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Reference code to include in the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "accountHolder",
                                "accountNumber",
                                "sortCode",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_COL"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_CL"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_BO"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_BR"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_NG"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_KE"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_GH"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_ZA"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_TZ"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_UG"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_RW"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_MW"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_ZM"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_BW"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_CD"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_XOF"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_XAF"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_NG"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_KE"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_GH"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_ZA"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_TZ"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_UG"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_RW"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_MW"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_ZM"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_BW"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_CD"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_XOF"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_XAF"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            }
                          ],
                          "description": "Details of the deposit",
                          "examples": [
                            {
                              "accountHolder": "John Doe",
                              "iban": "DE8937XXXXXXXXXXXX3000",
                              "bic": "COBADEFFXXX",
                              "bankName": "Commerzbank",
                              "bankAddress": "Mainzer Landstrasse 151-153",
                              "bankCity": "Frankfurt",
                              "bankZipcode": "60327",
                              "bankCountry": "DE",
                              "amount": 1000,
                              "referenceCode": "ABC123",
                              "depositType": "SEPA"
                            }
                          ]
                        },
                        "depositInfoPending": {
                          "type": "boolean",
                          "description": "True while the payment instructions are still being prepared. Poll this deposit until it is false (or absent) before showing the instructions to the payer."
                        },
                        "complianceHold": {
                          "type": "object",
                          "properties": {
                            "reason": {
                              "type": "string",
                              "enum": [
                                "screening",
                                "fiat_monitoring"
                              ],
                              "description": "Compliance hold reason"
                            }
                          },
                          "required": [
                            "reason"
                          ],
                          "description": "Present while the inbound transfer funding this deposit is held in provider compliance review. The deposit stays Reviewing (amount 0, never credited) until the hold clears (promote to Received) or the transfer is rejected/returned (terminalize)."
                        }
                      },
                      "required": [
                        "depositId",
                        "createdAt",
                        "expectedAmount",
                        "amount",
                        "currency",
                        "fee",
                        "expectedFee",
                        "feeCurrency",
                        "status",
                        "depositInfo"
                      ],
                      "description": "Details of the deposit associated with the order"
                    },
                    "trade": {
                      "type": "object",
                      "properties": {
                        "tradeId": {
                          "type": "string",
                          "description": "ID of the trade",
                          "example": "123e4567-e89b-12d3-a456-426614174000"
                        },
                        "createdAt": {
                          "type": "number",
                          "description": "Creation time of the trade",
                          "example": 1723027132
                        },
                        "pair": {
                          "type": "string",
                          "description": "Asset pair to trade",
                          "example": "BTC/EUR"
                        },
                        "tradeType": {
                          "type": "string",
                          "enum": [
                            "buy",
                            "sell"
                          ],
                          "description": "Type of trade"
                        },
                        "volume": {
                          "type": "number",
                          "minimum": 0,
                          "exclusiveMinimum": true,
                          "description": "Order quantity in lots",
                          "example": 0.5
                        },
                        "price": {
                          "type": "number",
                          "minimum": 0,
                          "exclusiveMinimum": true,
                          "description": "Price at which to place the order based on the pair",
                          "example": 30000
                        },
                        "conversionRate": {
                          "type": "number",
                          "minimum": 0,
                          "exclusiveMinimum": true,
                          "description": "Conversion rate at which to place the order based on the pair",
                          "example": 30000
                        },
                        "fee": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Fee for the trade",
                          "example": 0.1
                        },
                        "feeCurrency": {
                          "type": "string",
                          "description": "Currency of the fee",
                          "example": "EUR"
                        },
                        "userEmail": {
                          "type": "string",
                          "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                          "description": "Email of the user making the trade",
                          "example": "user@example.com"
                        }
                      },
                      "required": [
                        "tradeId",
                        "createdAt",
                        "pair",
                        "tradeType",
                        "volume",
                        "fee",
                        "feeCurrency",
                        "userEmail"
                      ],
                      "description": "Details of the trade associated with the order"
                    },
                    "withdraw": {
                      "type": "object",
                      "properties": {
                        "withdrawalId": {
                          "anyOf": [
                            {
                              "type": "string",
                              "minLength": 12,
                              "maxLength": 12,
                              "pattern": "^[A-Z0-9]{12}$",
                              "examples": [
                                "01CLFXMT67II",
                                "2R7E5Y5KFXP8",
                                "4FWWRE3Y2URM"
                              ]
                            },
                            {
                              "type": "string",
                              "format": "uuid"
                            }
                          ],
                          "description": "ID of the withdrawal"
                        },
                        "userData": {
                          "oneOf": [
                            {
                              "type": "object",
                              "properties": {
                                "userType": {
                                  "type": "string",
                                  "enum": [
                                    "individual"
                                  ]
                                },
                                "firstName": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 50,
                                  "description": "First name of the user making the deposit (or representative for business)",
                                  "examples": [
                                    "John",
                                    "Alice",
                                    "Bob"
                                  ]
                                },
                                "lastName": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 100,
                                  "description": "Last name of the user making the deposit (or representative for business)",
                                  "examples": [
                                    "Doe",
                                    "Smith",
                                    "Johnson"
                                  ]
                                },
                                "userEmail": {
                                  "type": "string",
                                  "maxLength": 254,
                                  "format": "email",
                                  "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                  "description": "Email of the user making the deposit",
                                  "examples": [
                                    "user@virtuabroker.com",
                                    "john.doe@example.com",
                                    "alice@example.com"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "maxLength": 150,
                                  "description": "Address of the user making the deposit",
                                  "examples": [
                                    "123 Main St, Anytown, ES",
                                    "456 Elm St, Anytown, ES",
                                    "789 Oak St, Anytown, ES"
                                  ]
                                },
                                "taxDocumentType": {
                                  "type": "string",
                                  "maxLength": 50,
                                  "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                  "examples": [
                                    "CC",
                                    "NIT",
                                    "CE",
                                    "NIF",
                                    "Other"
                                  ]
                                },
                                "taxId": {
                                  "type": "string",
                                  "maxLength": 30,
                                  "description": "Tax ID of the user making the deposit",
                                  "examples": [
                                    "123-45-6789",
                                    "987-65-4321",
                                    "111-22-3333"
                                  ]
                                },
                                "country": {
                                  "type": "string",
                                  "enum": [
                                    "US",
                                    "CA",
                                    "GB",
                                    "DE",
                                    "FR",
                                    "AU",
                                    "JP",
                                    "KR",
                                    "SE",
                                    "NO",
                                    "DK",
                                    "FI",
                                    "NL",
                                    "BE",
                                    "CH",
                                    "AT",
                                    "NZ",
                                    "SG",
                                    "IE",
                                    "LU",
                                    "PT",
                                    "ES",
                                    "IT",
                                    "GR",
                                    "CZ",
                                    "PL",
                                    "HU",
                                    "SK",
                                    "SI",
                                    "EE",
                                    "LT",
                                    "LV",
                                    "IS",
                                    "MT",
                                    "CY",
                                    "HR",
                                    "RO",
                                    "BG",
                                    "BR",
                                    "AR",
                                    "CL",
                                    "MX",
                                    "CO",
                                    "PE",
                                    "PA",
                                    "UY",
                                    "BO",
                                    "ZA",
                                    "NG",
                                    "KE",
                                    "GH",
                                    "TZ",
                                    "UG",
                                    "RW",
                                    "MW",
                                    "ZM",
                                    "BW",
                                    "CD",
                                    "CI",
                                    "CM",
                                    "IL",
                                    "AE",
                                    "QA",
                                    "SA",
                                    "OM",
                                    "KW",
                                    "BH",
                                    "MY",
                                    "PH",
                                    "TH",
                                    "VN",
                                    "ID",
                                    "IN",
                                    "LK",
                                    "NP",
                                    "BD",
                                    "PK",
                                    "EG",
                                    "MA",
                                    "DZ",
                                    "TN",
                                    "JO",
                                    "LB",
                                    "TR",
                                    "KH",
                                    "MM",
                                    "LA",
                                    "EN",
                                    "BT",
                                    "VE",
                                    "TW",
                                    "HK",
                                    "CN"
                                  ],
                                  "description": "Country code of the user making the deposit",
                                  "examples": [
                                    "ES",
                                    "US",
                                    "GB"
                                  ]
                                },
                                "state": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 100,
                                  "description": "State of the user making the deposit",
                                  "examples": [
                                    "Madrid",
                                    "New York",
                                    "London"
                                  ]
                                },
                                "postalCode": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 30,
                                  "description": "Postal code of the user making the deposit",
                                  "examples": [
                                    "12345",
                                    "67890",
                                    "abcde"
                                  ]
                                },
                                "city": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 100,
                                  "description": "City of the user making the deposit",
                                  "examples": [
                                    "Madrid",
                                    "New York",
                                    "London"
                                  ]
                                },
                                "dob": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 30,
                                  "description": "Date of birth of the user making the deposit",
                                  "examples": [
                                    "1990-01-01",
                                    "1995-05-15",
                                    "1988-12-31"
                                  ]
                                },
                                "phoneNumber": {
                                  "type": "string",
                                  "maxLength": 30,
                                  "description": "Phone number of the user making the deposit",
                                  "examples": [
                                    "+447700900123",
                                    "+447700900456",
                                    "+447700900789"
                                  ]
                                },
                                "kycId": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 300,
                                  "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                  "examples": [
                                    "kyc-12345",
                                    "kyc-67890",
                                    "kyc-abcde"
                                  ]
                                },
                                "activity": {
                                  "type": "string",
                                  "description": "Activity of the user making the deposit",
                                  "examples": [
                                    "worker",
                                    "business",
                                    "student"
                                  ]
                                }
                              },
                              "required": [
                                "userType",
                                "firstName",
                                "userEmail",
                                "country"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "userType": {
                                  "type": "string",
                                  "enum": [
                                    "business"
                                  ]
                                },
                                "businessName": {
                                  "type": "string",
                                  "maxLength": 150,
                                  "description": "Business name (required when userType is business)",
                                  "examples": [
                                    "Acme Corp",
                                    "Tech Solutions Inc",
                                    "Global Services Ltd"
                                  ]
                                },
                                "firstName": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 50,
                                  "description": "First name of the user making the deposit (or representative for business)",
                                  "examples": [
                                    "John",
                                    "Alice",
                                    "Bob"
                                  ]
                                },
                                "userEmail": {
                                  "type": "string",
                                  "maxLength": 254,
                                  "format": "email",
                                  "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                  "description": "Email of the user making the deposit",
                                  "examples": [
                                    "user@virtuabroker.com",
                                    "john.doe@example.com",
                                    "alice@example.com"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "maxLength": 150,
                                  "description": "Address of the user making the deposit",
                                  "examples": [
                                    "123 Main St, Anytown, ES",
                                    "456 Elm St, Anytown, ES",
                                    "789 Oak St, Anytown, ES"
                                  ]
                                },
                                "taxDocumentType": {
                                  "type": "string",
                                  "maxLength": 50,
                                  "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                  "examples": [
                                    "CC",
                                    "NIT",
                                    "CE",
                                    "NIF",
                                    "Other"
                                  ]
                                },
                                "taxId": {
                                  "type": "string",
                                  "maxLength": 30,
                                  "description": "Tax ID of the user making the deposit",
                                  "examples": [
                                    "123-45-6789",
                                    "987-65-4321",
                                    "111-22-3333"
                                  ]
                                },
                                "country": {
                                  "type": "string",
                                  "enum": [
                                    "US",
                                    "CA",
                                    "GB",
                                    "DE",
                                    "FR",
                                    "AU",
                                    "JP",
                                    "KR",
                                    "SE",
                                    "NO",
                                    "DK",
                                    "FI",
                                    "NL",
                                    "BE",
                                    "CH",
                                    "AT",
                                    "NZ",
                                    "SG",
                                    "IE",
                                    "LU",
                                    "PT",
                                    "ES",
                                    "IT",
                                    "GR",
                                    "CZ",
                                    "PL",
                                    "HU",
                                    "SK",
                                    "SI",
                                    "EE",
                                    "LT",
                                    "LV",
                                    "IS",
                                    "MT",
                                    "CY",
                                    "HR",
                                    "RO",
                                    "BG",
                                    "BR",
                                    "AR",
                                    "CL",
                                    "MX",
                                    "CO",
                                    "PE",
                                    "PA",
                                    "UY",
                                    "BO",
                                    "ZA",
                                    "NG",
                                    "KE",
                                    "GH",
                                    "TZ",
                                    "UG",
                                    "RW",
                                    "MW",
                                    "ZM",
                                    "BW",
                                    "CD",
                                    "CI",
                                    "CM",
                                    "IL",
                                    "AE",
                                    "QA",
                                    "SA",
                                    "OM",
                                    "KW",
                                    "BH",
                                    "MY",
                                    "PH",
                                    "TH",
                                    "VN",
                                    "ID",
                                    "IN",
                                    "LK",
                                    "NP",
                                    "BD",
                                    "PK",
                                    "EG",
                                    "MA",
                                    "DZ",
                                    "TN",
                                    "JO",
                                    "LB",
                                    "TR",
                                    "KH",
                                    "MM",
                                    "LA",
                                    "EN",
                                    "BT",
                                    "VE",
                                    "TW",
                                    "HK",
                                    "CN"
                                  ],
                                  "description": "Country code of the user making the deposit",
                                  "examples": [
                                    "ES",
                                    "US",
                                    "GB"
                                  ]
                                },
                                "state": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 100,
                                  "description": "State of the user making the deposit",
                                  "examples": [
                                    "Madrid",
                                    "New York",
                                    "London"
                                  ]
                                },
                                "postalCode": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 30,
                                  "description": "Postal code of the user making the deposit",
                                  "examples": [
                                    "12345",
                                    "67890",
                                    "abcde"
                                  ]
                                },
                                "city": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 100,
                                  "description": "City of the user making the deposit",
                                  "examples": [
                                    "Madrid",
                                    "New York",
                                    "London"
                                  ]
                                },
                                "dob": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 30,
                                  "description": "Date of birth of the user making the deposit",
                                  "examples": [
                                    "1990-01-01",
                                    "1995-05-15",
                                    "1988-12-31"
                                  ]
                                },
                                "phoneNumber": {
                                  "type": "string",
                                  "maxLength": 30,
                                  "description": "Phone number of the user making the deposit",
                                  "examples": [
                                    "+447700900123",
                                    "+447700900456",
                                    "+447700900789"
                                  ]
                                },
                                "kycId": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 300,
                                  "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                  "examples": [
                                    "kyc-12345",
                                    "kyc-67890",
                                    "kyc-abcde"
                                  ]
                                },
                                "activity": {
                                  "type": "string",
                                  "description": "Activity of the user making the deposit",
                                  "examples": [
                                    "worker",
                                    "business",
                                    "student"
                                  ]
                                }
                              },
                              "required": [
                                "userType",
                                "businessName",
                                "firstName",
                                "userEmail",
                                "country"
                              ]
                            }
                          ],
                          "description": "User data for the withdrawal"
                        },
                        "createdAt": {
                          "type": "number",
                          "description": "Creation time of the withdrawal",
                          "example": 1723027132
                        },
                        "updatedAt": {
                          "type": "number",
                          "description": "Last update time of the withdrawal",
                          "example": 1723027132
                        },
                        "userEmail": {
                          "type": "string",
                          "format": "email",
                          "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                          "description": "Email of the user making the request",
                          "example": "user@example.com"
                        },
                        "amount": {
                          "type": "number",
                          "description": "Amount to be withdrawn. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
                          "example": 1000
                        },
                        "currency": {
                          "type": "string",
                          "description": "Currency of the withdrawal",
                          "example": "EUR"
                        },
                        "fee": {
                          "type": "number",
                          "description": "Fee for the withdrawal. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
                          "example": 10
                        },
                        "feeCurrency": {
                          "type": "string",
                          "description": "Currency of the fee",
                          "example": "EUR"
                        },
                        "destinationTransferData": {
                          "oneOf": [
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BALANCE"
                                  ]
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "Balance transfer details",
                              "title": "Balance"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "iban": {
                                  "type": "string",
                                  "description": "IBAN number"
                                },
                                "bic": {
                                  "type": "string",
                                  "description": "BIC number (optional)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "Country code"
                                },
                                "accountType": {
                                  "type": "string",
                                  "enum": [
                                    "PERSONAL",
                                    "BUSINESS"
                                  ],
                                  "default": "PERSONAL",
                                  "description": "Account type (optional)"
                                },
                                "city": {
                                  "type": "string",
                                  "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                                },
                                "postalCode": {
                                  "type": "string",
                                  "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "SEPA"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "iban",
                                "country",
                                "type"
                              ],
                              "description": "SEPA transfer details",
                              "title": "SEPA"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "UK bank account number"
                                },
                                "sortCode": {
                                  "type": "string",
                                  "description": "UK sort code"
                                },
                                "country": {
                                  "type": "string",
                                  "enum": [
                                    "GB"
                                  ],
                                  "default": "GB",
                                  "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                                },
                                "accountType": {
                                  "type": "string",
                                  "enum": [
                                    "PERSONAL",
                                    "BUSINESS"
                                  ],
                                  "default": "PERSONAL",
                                  "description": "Account type (optional)"
                                },
                                "city": {
                                  "type": "string",
                                  "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                                },
                                "postalCode": {
                                  "type": "string",
                                  "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "GBP_BANK_TRANSFER"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "accountNumber",
                                "sortCode",
                                "type"
                              ],
                              "description": "GBP domestic bank transfer details",
                              "title": "BankDepositGB"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "US bank account number"
                                },
                                "routingNumber": {
                                  "type": "string",
                                  "description": "US ABA routing number"
                                },
                                "country": {
                                  "type": "string",
                                  "enum": [
                                    "US"
                                  ],
                                  "default": "US",
                                  "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                                },
                                "accountType": {
                                  "type": "string",
                                  "enum": [
                                    "PERSONAL",
                                    "BUSINESS"
                                  ],
                                  "default": "PERSONAL",
                                  "description": "Account type (optional)"
                                },
                                "bankAccountType": {
                                  "type": "string",
                                  "enum": [
                                    "CHECKING",
                                    "SAVINGS"
                                  ],
                                  "default": "CHECKING",
                                  "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                                },
                                "city": {
                                  "type": "string",
                                  "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                                },
                                "postalCode": {
                                  "type": "string",
                                  "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                                },
                                "state": {
                                  "type": "string",
                                  "pattern": "^[A-Z]{2}$",
                                  "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "ACH_US"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "accountNumber",
                                "routingNumber",
                                "state",
                                "type"
                              ],
                              "description": "USD ACH transfer details",
                              "title": "AchUS"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "linkedBankAccount"
                                  ]
                                },
                                "accountLinkId": {
                                  "type": "string",
                                  "pattern": "^alnk_[0-9a-f]{24}$",
                                  "description": "Identifier of one of the account holder own linked bank accounts",
                                  "examples": [
                                    "alnk_0123456789abcdef01234567"
                                  ]
                                }
                              },
                              "required": [
                                "type",
                                "accountLinkId"
                              ],
                              "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                              "title": "LinkedBankAccount",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "ETH"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "ETH destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "ETH"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MATIC"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "MATIC destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "MATIC"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "SOL"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "SOL destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "\\S"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "\\S"
                                    }
                                  }
                                }
                              ],
                              "title": "SOL"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "TRON"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "TRON destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "\\S"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "\\S"
                                    }
                                  }
                                }
                              ],
                              "title": "TRON"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "CELO"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "CELO destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "CELO"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BTC"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "BTC destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "\\S"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "\\S"
                                    }
                                  }
                                }
                              ],
                              "title": "BTC"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "SOLANA"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "SOLANA destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "\\S"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "\\S"
                                    }
                                  }
                                }
                              ],
                              "title": "SOLANA"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "XRP"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "XRP destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "\\S"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "\\S"
                                    }
                                  }
                                }
                              ],
                              "title": "XRP"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "CARDANO"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "CARDANO destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "\\S"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "\\S"
                                    }
                                  }
                                }
                              ],
                              "title": "CARDANO"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BSC"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "BSC destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "BSC"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "ARBITRUM"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "ARBITRUM destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "ARBITRUM"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "OPTIMISM"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "OPTIMISM destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "OPTIMISM"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "AVALANCHE"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "AVALANCHE destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "AVALANCHE"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BASE"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "BASE destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "BASE"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_COL"
                                  ]
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "Recipient ID document number. Required when creating or updating a destination."
                                },
                                "destinationDocumentType": {
                                  "type": "string",
                                  "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                              "title": "Bank Deposit COL"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "brebKey": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Bre-B key (llave) that identifies the recipient account"
                                },
                                "email": {
                                  "type": "string",
                                  "description": "Recipient email (optional contact for the Bre-B rail)"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Recipient phone number (optional contact for the Bre-B rail)"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BRE_B_COP"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "brebKey",
                                "type"
                              ],
                              "description": "Colombian Bre-B payout details",
                              "title": "Bre-B COP"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "pattern": "^\\d{4}$",
                                  "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                                },
                                "destinationBankAccountNumber": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Recipient bank account number"
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                                },
                                "destinationDocumentType": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Recipient ID document number"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "ACH_COP"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankCode",
                                "destinationBankAccountNumber",
                                "destinationBankAccountType",
                                "destinationDocumentType",
                                "destinationTaxId",
                                "type"
                              ],
                              "description": "Colombian ACH payout details",
                              "title": "ACH COP"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (unused for TWD — no network discovery)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "minLength": 2,
                                  "description": "Bank name (required — TWD payouts run over SWIFT)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_TW"
                                  ]
                                },
                                "destinationBankBranch": {
                                  "type": "string",
                                  "minLength": 2,
                                  "description": "Bank branch (required — TWD payouts run over SWIFT)"
                                },
                                "bic": {
                                  "type": "string",
                                  "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                                  "description": "SWIFT BIC code (required for TWD payouts)"
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "description": "Type of bank account (legacy, optional)"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "Tax ID of the recipient (legacy, optional)"
                                },
                                "destinationDocumentType": {
                                  "type": "string",
                                  "description": "Document type of the recipient (legacy, optional)"
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "destinationBankName",
                                "type",
                                "destinationBankBranch",
                                "bic"
                              ],
                              "description": "Taiwan bank deposit details (SWIFT payout)",
                              "title": "Bank Deposit TW"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "description": "Bank code"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationBankBranch": {
                                  "type": "string",
                                  "description": "Bank branch"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "Tax ID of the recipient"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_BR"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankCode",
                                "destinationBankAccount",
                                "destinationBankBranch",
                                "destinationTaxId",
                                "type"
                              ],
                              "description": "Brazilian bank deposit details",
                              "title": "Bank Deposit BR"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPixCode": {
                                  "type": "string",
                                  "description": "PIX code"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "Tax ID of the recipient"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "PIX_BR"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPixCode",
                                "destinationTaxId",
                                "type"
                              ],
                              "description": "Brazilian PIX details",
                              "title": "PIX BR"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccountNumber": {
                                  "type": "string",
                                  "description": "Bank account number"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Name of the bank"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                                  "description": "Tax ID of the recipient"
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "description": "Type of bank account"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_VEN"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccountNumber",
                                "destinationBankName",
                                "destinationTaxId",
                                "destinationBankAccountType",
                                "type"
                              ],
                              "description": "Venezuelan bank deposit details",
                              "title": "Bank Deposit VEN"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "description": "Bank code"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                                  "description": "Tax ID of the recipient"
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "description": "Type of bank account"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "PHONE_DEPOSIT_VEN"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankCode",
                                "destinationPhoneNumber",
                                "destinationTaxId",
                                "destinationBankAccountType",
                                "type"
                              ],
                              "description": "Venezuelan phone deposit details",
                              "title": "Phone Deposit VEN"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationIFSC": {
                                  "type": "string",
                                  "description": "IFSC code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_IN"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Bank Deposit IN",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationIFSC": {
                                  "type": "string",
                                  "description": "IFSC code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "IMPS"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "IMPS",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationIFSC": {
                                  "type": "string",
                                  "description": "IFSC code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "THAI_QR"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Thai QR",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationIFSC": {
                                  "type": "string",
                                  "description": "IFSC code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "VIET_QR"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Viet QR",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationIFSC": {
                                  "type": "string",
                                  "description": "IFSC code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "GCASH"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "GCash",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "Tax ID"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_PAYMENT_IN"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "destinationTaxId",
                                "type"
                              ],
                              "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Mobile Payment IN",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "description": "Bank code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_VN"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "destinationBankCode",
                                "type"
                              ],
                              "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Bank Deposit VN",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "bic": {
                                  "type": "string",
                                  "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "destinationAddress": {
                                  "type": "string",
                                  "description": "Address line 1 of the recipient"
                                },
                                "destinationCity": {
                                  "type": "string",
                                  "description": "Recipient city (defaults to Hong Kong)"
                                },
                                "accountHolderName": {
                                  "type": "string",
                                  "description": "Bank account holder name if different from payee"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_HK"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "bic",
                                "destinationBankName",
                                "destinationAddress",
                                "type"
                              ],
                              "description": "Hong Kong bank deposit details (HKD bank corridor)",
                              "title": "Bank Deposit HK"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "pattern": "^\\d+$",
                                  "description": "CNAPS / bank institution code (numeric, variable length)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "destinationAddress": {
                                  "type": "string",
                                  "description": "Address line 1 of the recipient"
                                },
                                "destinationCity": {
                                  "type": "string",
                                  "description": "Recipient city"
                                },
                                "destinationState": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                                },
                                "destinationPostcode": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                                },
                                "destinationPhone": {
                                  "type": "string",
                                  "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                                },
                                "accountHolderName": {
                                  "type": "string",
                                  "description": "Bank account holder name if different from payee"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_CN"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "destinationBankCode",
                                "destinationBankName",
                                "destinationAddress",
                                "destinationCity",
                                "destinationState",
                                "destinationPostcode",
                                "type"
                              ],
                              "description": "China mainland bank deposit details (CNY bank corridor)",
                              "title": "Bank Deposit CN"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_AR"
                                  ]
                                },
                                "destinationCBU": {
                                  "type": "string",
                                  "description": "CBU — 22-digit bank account key (legacy, optional)"
                                },
                                "destinationCVU": {
                                  "type": "string",
                                  "description": "CVU — 22-digit virtual account key (legacy, optional)"
                                },
                                "destinationAlias": {
                                  "type": "string",
                                  "description": "Account alias (legacy, optional)"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                                },
                                "destinationDocumentType": {
                                  "type": "string",
                                  "description": "Document type of the recipient (legacy, optional)"
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Argentinian bank deposit details",
                              "title": "Bank Deposit AR"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Recipient bank name (required for Chilean bank payouts)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_CL"
                                  ]
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                                },
                                "destinationDocumentType": {
                                  "type": "string",
                                  "description": "Document type of the recipient (legacy, optional)"
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "destinationBankName",
                                "type",
                                "destinationBankAccountType",
                                "destinationTaxId"
                              ],
                              "description": "Chilean bank deposit details",
                              "title": "Bank Deposit CL"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "minLength": 2,
                                  "maxLength": 30,
                                  "description": "Recipient name (required, 2–30 characters)"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 11,
                                  "description": "Bank account number (max 11 digits for Bolivian accounts)"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (unused for BOB — no network discovery)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "maxLength": 20,
                                  "description": "Bank name (optional, max 20 characters)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_BO"
                                  ]
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 15,
                                  "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type",
                                "destinationTaxId"
                              ],
                              "description": "Bolivian bank deposit details",
                              "title": "Bank Deposit BO"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_PE"
                                  ]
                                },
                                "destinationCCI": {
                                  "type": "string",
                                  "description": "CCI — 20-digit interbank account code (legacy, optional)"
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "description": "Account type (corriente/ahorro) (legacy, optional)"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                                },
                                "destinationDocumentType": {
                                  "type": "string",
                                  "description": "Document type of the recipient (legacy, optional)"
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "destinationNetworkId",
                                "type"
                              ],
                              "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Bank Deposit PE",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "pattern": "^\\d{3}$",
                                  "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                                },
                                "destinationBankAccountNumber": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 20,
                                  "description": "Recipient bank account number (max 20)"
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "enum": [
                                    "CORRIENTE",
                                    "AHORROS",
                                    "PHONE"
                                  ],
                                  "description": "Bank account type"
                                },
                                "destinationCCI": {
                                  "type": "string",
                                  "pattern": "^\\d{1,20}$",
                                  "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                                },
                                "destinationDocumentType": {
                                  "type": "string",
                                  "enum": [
                                    "CC",
                                    "CE",
                                    "RUC",
                                    "PAS",
                                    "PAR",
                                    "LMI",
                                    "OTHER"
                                  ],
                                  "description": "Recipient identification type"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 50,
                                  "description": "Recipient identification number (max 50)"
                                },
                                "email": {
                                  "type": "string",
                                  "pattern": "^.+@.+\\..+$",
                                  "description": "Recipient email (required for PEN payouts)"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "pattern": "^\\d{1,9}$",
                                  "description": "Recipient phone number (required, max 9 digits)"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_PEN"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankCode",
                                "destinationBankAccountNumber",
                                "destinationBankAccountType",
                                "destinationCCI",
                                "destinationDocumentType",
                                "destinationTaxId",
                                "email",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Peruvian bank deposit details (bank-code payout corridor).",
                              "title": "Bank Deposit PEN"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_NG"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Nigeria bank deposit details",
                              "title": "Bank Deposit NG"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_KE"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Kenya bank deposit details",
                              "title": "Bank Deposit KE"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_GH"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Bank Deposit GH",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_ZA"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "South Africa bank deposit details",
                              "title": "Bank Deposit ZA"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_TZ"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Tanzania bank deposit details",
                              "title": "Bank Deposit TZ"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_UG"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Uganda bank deposit details",
                              "title": "Bank Deposit UG"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_RW"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Rwanda bank deposit details",
                              "title": "Bank Deposit RW"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_MW"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Malawi bank deposit details",
                              "title": "Bank Deposit MW"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_ZM"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Zambia bank deposit details",
                              "title": "Bank Deposit ZM"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_BW"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Botswana bank deposit details",
                              "title": "Bank Deposit BW"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_CD"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Bank Deposit CD",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_XOF"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "West African CFA bank deposit details",
                              "title": "Bank Deposit XOF"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_XAF"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Central African CFA bank deposit details",
                              "title": "Bank Deposit XAF"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_NG"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Nigeria mobile money details",
                              "title": "Mobile Money NG"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_KE"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Kenya mobile money details",
                              "title": "Mobile Money KE"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_GH"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Mobile Money GH",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_ZA"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "South Africa mobile money details",
                              "title": "Mobile Money ZA"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_TZ"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Tanzania mobile money details",
                              "title": "Mobile Money TZ"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_UG"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Uganda mobile money details",
                              "title": "Mobile Money UG"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_RW"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Rwanda mobile money details",
                              "title": "Mobile Money RW"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_MW"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Malawi mobile money details",
                              "title": "Mobile Money MW"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_ZM"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Zambia mobile money details",
                              "title": "Mobile Money ZM"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_BW"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Botswana mobile money details",
                              "title": "Mobile Money BW"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_CD"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Mobile Money CD",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_XOF"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "West African CFA mobile money details",
                              "title": "Mobile Money XOF"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_XAF"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Central African CFA mobile money details",
                              "title": "Mobile Money XAF"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "description": "Bank code"
                                },
                                "destinationBankAccountNumber": {
                                  "type": "string",
                                  "description": "Bank account number (18-digit CLABE)"
                                },
                                "numericReference": {
                                  "type": "string",
                                  "description": "Numeric reference"
                                },
                                "notesReference": {
                                  "type": "string",
                                  "description": "Notes reference"
                                },
                                "destinationClabe": {
                                  "type": "string",
                                  "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_MX"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccountNumber",
                                "type"
                              ],
                              "description": "Mexican bank deposit details",
                              "title": "Bank Deposit MX"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPseNumber": {
                                  "type": "string",
                                  "description": "PSE number"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "PSE"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPseNumber",
                                "type"
                              ],
                              "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "PSE",
                              "deprecated": true
                            }
                          ],
                          "description": "The details required for the end user destination transfer method."
                        },
                        "status": {
                          "anyOf": [
                            {
                              "type": "string",
                              "enum": [
                                "Pending",
                                "Processing",
                                "Success",
                                "Failed",
                                "Canceled",
                                "Reviewing"
                              ],
                              "description": "Common status values that are shared across all operation types",
                              "examples": [
                                "Pending",
                                "Processing",
                                "Success",
                                "Failed",
                                "Canceled",
                                "Reviewing"
                              ]
                            },
                            {
                              "type": "string",
                              "enum": [
                                "PendingCancel",
                                "PendingWithdrawal",
                                "PendingVerification",
                                "Pending2FA",
                                "Compliance",
                                "Accepted",
                                "Approved",
                                "Rejected",
                                "Review"
                              ]
                            }
                          ],
                          "description": "Status of the withdrawal",
                          "examples": [
                            "Pending",
                            "Pending2FA",
                            "Compliance",
                            "Accepted",
                            "Approved",
                            "Success",
                            "Failed",
                            "Review",
                            "Rejected"
                          ]
                        },
                        "withdrawalInfo": {
                          "oneOf": [
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BALANCE"
                                  ]
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "Balance transfer details",
                              "title": "Balance"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "iban": {
                                  "type": "string",
                                  "description": "IBAN number"
                                },
                                "bic": {
                                  "type": "string",
                                  "description": "BIC number (optional)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "Country code"
                                },
                                "accountType": {
                                  "type": "string",
                                  "enum": [
                                    "PERSONAL",
                                    "BUSINESS"
                                  ],
                                  "default": "PERSONAL",
                                  "description": "Account type (optional)"
                                },
                                "city": {
                                  "type": "string",
                                  "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                                },
                                "postalCode": {
                                  "type": "string",
                                  "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "SEPA"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "iban",
                                "country",
                                "type"
                              ],
                              "description": "SEPA transfer details",
                              "title": "SEPA"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "UK bank account number"
                                },
                                "sortCode": {
                                  "type": "string",
                                  "description": "UK sort code"
                                },
                                "country": {
                                  "type": "string",
                                  "enum": [
                                    "GB"
                                  ],
                                  "default": "GB",
                                  "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                                },
                                "accountType": {
                                  "type": "string",
                                  "enum": [
                                    "PERSONAL",
                                    "BUSINESS"
                                  ],
                                  "default": "PERSONAL",
                                  "description": "Account type (optional)"
                                },
                                "city": {
                                  "type": "string",
                                  "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                                },
                                "postalCode": {
                                  "type": "string",
                                  "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "GBP_BANK_TRANSFER"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "accountNumber",
                                "sortCode",
                                "type"
                              ],
                              "description": "GBP domestic bank transfer details",
                              "title": "BankDepositGB"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "US bank account number"
                                },
                                "routingNumber": {
                                  "type": "string",
                                  "description": "US ABA routing number"
                                },
                                "country": {
                                  "type": "string",
                                  "enum": [
                                    "US"
                                  ],
                                  "default": "US",
                                  "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                                },
                                "accountType": {
                                  "type": "string",
                                  "enum": [
                                    "PERSONAL",
                                    "BUSINESS"
                                  ],
                                  "default": "PERSONAL",
                                  "description": "Account type (optional)"
                                },
                                "bankAccountType": {
                                  "type": "string",
                                  "enum": [
                                    "CHECKING",
                                    "SAVINGS"
                                  ],
                                  "default": "CHECKING",
                                  "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                                },
                                "city": {
                                  "type": "string",
                                  "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                                },
                                "postalCode": {
                                  "type": "string",
                                  "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                                },
                                "state": {
                                  "type": "string",
                                  "pattern": "^[A-Z]{2}$",
                                  "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "ACH_US"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "accountNumber",
                                "routingNumber",
                                "state",
                                "type"
                              ],
                              "description": "USD ACH transfer details",
                              "title": "AchUS"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "linkedBankAccount"
                                  ]
                                },
                                "accountLinkId": {
                                  "type": "string",
                                  "pattern": "^alnk_[0-9a-f]{24}$",
                                  "description": "Identifier of one of the account holder own linked bank accounts",
                                  "examples": [
                                    "alnk_0123456789abcdef01234567"
                                  ]
                                }
                              },
                              "required": [
                                "type",
                                "accountLinkId"
                              ],
                              "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                              "title": "LinkedBankAccount",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "ETH"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "ETH destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "ETH"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MATIC"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "MATIC destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "MATIC"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "SOL"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "SOL destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "\\S"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "\\S"
                                    }
                                  }
                                }
                              ],
                              "title": "SOL"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "TRON"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "TRON destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "\\S"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "\\S"
                                    }
                                  }
                                }
                              ],
                              "title": "TRON"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "CELO"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "CELO destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "CELO"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BTC"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "BTC destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "\\S"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "\\S"
                                    }
                                  }
                                }
                              ],
                              "title": "BTC"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "SOLANA"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "SOLANA destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "\\S"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "\\S"
                                    }
                                  }
                                }
                              ],
                              "title": "SOLANA"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "XRP"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "XRP destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "\\S"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "\\S"
                                    }
                                  }
                                }
                              ],
                              "title": "XRP"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "CARDANO"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "CARDANO destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "\\S"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "\\S"
                                    }
                                  }
                                }
                              ],
                              "title": "CARDANO"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BSC"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "BSC destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "BSC"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "ARBITRUM"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "ARBITRUM destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "ARBITRUM"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "OPTIMISM"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "OPTIMISM destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "OPTIMISM"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "AVALANCHE"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "AVALANCHE destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "AVALANCHE"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BASE"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "BASE destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "BASE"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_COL"
                                  ]
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "Recipient ID document number. Required when creating or updating a destination."
                                },
                                "destinationDocumentType": {
                                  "type": "string",
                                  "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                              "title": "Bank Deposit COL"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "brebKey": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Bre-B key (llave) that identifies the recipient account"
                                },
                                "email": {
                                  "type": "string",
                                  "description": "Recipient email (optional contact for the Bre-B rail)"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Recipient phone number (optional contact for the Bre-B rail)"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BRE_B_COP"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "brebKey",
                                "type"
                              ],
                              "description": "Colombian Bre-B payout details",
                              "title": "Bre-B COP"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "pattern": "^\\d{4}$",
                                  "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                                },
                                "destinationBankAccountNumber": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Recipient bank account number"
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                                },
                                "destinationDocumentType": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Recipient ID document number"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "ACH_COP"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankCode",
                                "destinationBankAccountNumber",
                                "destinationBankAccountType",
                                "destinationDocumentType",
                                "destinationTaxId",
                                "type"
                              ],
                              "description": "Colombian ACH payout details",
                              "title": "ACH COP"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (unused for TWD — no network discovery)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "minLength": 2,
                                  "description": "Bank name (required — TWD payouts run over SWIFT)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_TW"
                                  ]
                                },
                                "destinationBankBranch": {
                                  "type": "string",
                                  "minLength": 2,
                                  "description": "Bank branch (required — TWD payouts run over SWIFT)"
                                },
                                "bic": {
                                  "type": "string",
                                  "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                                  "description": "SWIFT BIC code (required for TWD payouts)"
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "description": "Type of bank account (legacy, optional)"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "Tax ID of the recipient (legacy, optional)"
                                },
                                "destinationDocumentType": {
                                  "type": "string",
                                  "description": "Document type of the recipient (legacy, optional)"
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "destinationBankName",
                                "type",
                                "destinationBankBranch",
                                "bic"
                              ],
                              "description": "Taiwan bank deposit details (SWIFT payout)",
                              "title": "Bank Deposit TW"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "description": "Bank code"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationBankBranch": {
                                  "type": "string",
                                  "description": "Bank branch"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "Tax ID of the recipient"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_BR"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankCode",
                                "destinationBankAccount",
                                "destinationBankBranch",
                                "destinationTaxId",
                                "type"
                              ],
                              "description": "Brazilian bank deposit details",
                              "title": "Bank Deposit BR"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPixCode": {
                                  "type": "string",
                                  "description": "PIX code"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "Tax ID of the recipient"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "PIX_BR"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPixCode",
                                "destinationTaxId",
                                "type"
                              ],
                              "description": "Brazilian PIX details",
                              "title": "PIX BR"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccountNumber": {
                                  "type": "string",
                                  "description": "Bank account number"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Name of the bank"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                                  "description": "Tax ID of the recipient"
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "description": "Type of bank account"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_VEN"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccountNumber",
                                "destinationBankName",
                                "destinationTaxId",
                                "destinationBankAccountType",
                                "type"
                              ],
                              "description": "Venezuelan bank deposit details",
                              "title": "Bank Deposit VEN"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "description": "Bank code"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                                  "description": "Tax ID of the recipient"
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "description": "Type of bank account"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "PHONE_DEPOSIT_VEN"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankCode",
                                "destinationPhoneNumber",
                                "destinationTaxId",
                                "destinationBankAccountType",
                                "type"
                              ],
                              "description": "Venezuelan phone deposit details",
                              "title": "Phone Deposit VEN"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationIFSC": {
                                  "type": "string",
                                  "description": "IFSC code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_IN"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Bank Deposit IN",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationIFSC": {
                                  "type": "string",
                                  "description": "IFSC code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "IMPS"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "IMPS",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationIFSC": {
                                  "type": "string",
                                  "description": "IFSC code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "THAI_QR"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Thai QR",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationIFSC": {
                                  "type": "string",
                                  "description": "IFSC code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "VIET_QR"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Viet QR",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationIFSC": {
                                  "type": "string",
                                  "description": "IFSC code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "GCASH"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "GCash",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "Tax ID"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_PAYMENT_IN"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "destinationTaxId",
                                "type"
                              ],
                              "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Mobile Payment IN",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "description": "Bank code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_VN"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "destinationBankCode",
                                "type"
                              ],
                              "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Bank Deposit VN",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "bic": {
                                  "type": "string",
                                  "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "destinationAddress": {
                                  "type": "string",
                                  "description": "Address line 1 of the recipient"
                                },
                                "destinationCity": {
                                  "type": "string",
                                  "description": "Recipient city (defaults to Hong Kong)"
                                },
                                "accountHolderName": {
                                  "type": "string",
                                  "description": "Bank account holder name if different from payee"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_HK"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "bic",
                                "destinationBankName",
                                "destinationAddress",
                                "type"
                              ],
                              "description": "Hong Kong bank deposit details (HKD bank corridor)",
                              "title": "Bank Deposit HK"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "pattern": "^\\d+$",
                                  "description": "CNAPS / bank institution code (numeric, variable length)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "destinationAddress": {
                                  "type": "string",
                                  "description": "Address line 1 of the recipient"
                                },
                                "destinationCity": {
                                  "type": "string",
                                  "description": "Recipient city"
                                },
                                "destinationState": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                                },
                                "destinationPostcode": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                                },
                                "destinationPhone": {
                                  "type": "string",
                                  "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                                },
                                "accountHolderName": {
                                  "type": "string",
                                  "description": "Bank account holder name if different from payee"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_CN"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "destinationBankCode",
                                "destinationBankName",
                                "destinationAddress",
                                "destinationCity",
                                "destinationState",
                                "destinationPostcode",
                                "type"
                              ],
                              "description": "China mainland bank deposit details (CNY bank corridor)",
                              "title": "Bank Deposit CN"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_AR"
                                  ]
                                },
                                "destinationCBU": {
                                  "type": "string",
                                  "description": "CBU — 22-digit bank account key (legacy, optional)"
                                },
                                "destinationCVU": {
                                  "type": "string",
                                  "description": "CVU — 22-digit virtual account key (legacy, optional)"
                                },
                                "destinationAlias": {
                                  "type": "string",
                                  "description": "Account alias (legacy, optional)"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                                },
                                "destinationDocumentType": {
                                  "type": "string",
                                  "description": "Document type of the recipient (legacy, optional)"
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Argentinian bank deposit details",
                              "title": "Bank Deposit AR"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Recipient bank name (required for Chilean bank payouts)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_CL"
                                  ]
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                                },
                                "destinationDocumentType": {
                                  "type": "string",
                                  "description": "Document type of the recipient (legacy, optional)"
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "destinationBankName",
                                "type",
                                "destinationBankAccountType",
                                "destinationTaxId"
                              ],
                              "description": "Chilean bank deposit details",
                              "title": "Bank Deposit CL"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "minLength": 2,
                                  "maxLength": 30,
                                  "description": "Recipient name (required, 2–30 characters)"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 11,
                                  "description": "Bank account number (max 11 digits for Bolivian accounts)"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (unused for BOB — no network discovery)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "maxLength": 20,
                                  "description": "Bank name (optional, max 20 characters)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_BO"
                                  ]
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 15,
                                  "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type",
                                "destinationTaxId"
                              ],
                              "description": "Bolivian bank deposit details",
                              "title": "Bank Deposit BO"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_PE"
                                  ]
                                },
                                "destinationCCI": {
                                  "type": "string",
                                  "description": "CCI — 20-digit interbank account code (legacy, optional)"
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "description": "Account type (corriente/ahorro) (legacy, optional)"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                                },
                                "destinationDocumentType": {
                                  "type": "string",
                                  "description": "Document type of the recipient (legacy, optional)"
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "destinationNetworkId",
                                "type"
                              ],
                              "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Bank Deposit PE",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "pattern": "^\\d{3}$",
                                  "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                                },
                                "destinationBankAccountNumber": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 20,
                                  "description": "Recipient bank account number (max 20)"
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "enum": [
                                    "CORRIENTE",
                                    "AHORROS",
                                    "PHONE"
                                  ],
                                  "description": "Bank account type"
                                },
                                "destinationCCI": {
                                  "type": "string",
                                  "pattern": "^\\d{1,20}$",
                                  "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                                },
                                "destinationDocumentType": {
                                  "type": "string",
                                  "enum": [
                                    "CC",
                                    "CE",
                                    "RUC",
                                    "PAS",
                                    "PAR",
                                    "LMI",
                                    "OTHER"
                                  ],
                                  "description": "Recipient identification type"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 50,
                                  "description": "Recipient identification number (max 50)"
                                },
                                "email": {
                                  "type": "string",
                                  "pattern": "^.+@.+\\..+$",
                                  "description": "Recipient email (required for PEN payouts)"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "pattern": "^\\d{1,9}$",
                                  "description": "Recipient phone number (required, max 9 digits)"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_PEN"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankCode",
                                "destinationBankAccountNumber",
                                "destinationBankAccountType",
                                "destinationCCI",
                                "destinationDocumentType",
                                "destinationTaxId",
                                "email",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Peruvian bank deposit details (bank-code payout corridor).",
                              "title": "Bank Deposit PEN"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_NG"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Nigeria bank deposit details",
                              "title": "Bank Deposit NG"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_KE"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Kenya bank deposit details",
                              "title": "Bank Deposit KE"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_GH"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Bank Deposit GH",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_ZA"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "South Africa bank deposit details",
                              "title": "Bank Deposit ZA"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_TZ"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Tanzania bank deposit details",
                              "title": "Bank Deposit TZ"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_UG"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Uganda bank deposit details",
                              "title": "Bank Deposit UG"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_RW"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Rwanda bank deposit details",
                              "title": "Bank Deposit RW"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_MW"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Malawi bank deposit details",
                              "title": "Bank Deposit MW"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_ZM"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Zambia bank deposit details",
                              "title": "Bank Deposit ZM"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_BW"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Botswana bank deposit details",
                              "title": "Bank Deposit BW"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_CD"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Bank Deposit CD",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_XOF"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "West African CFA bank deposit details",
                              "title": "Bank Deposit XOF"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_XAF"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Central African CFA bank deposit details",
                              "title": "Bank Deposit XAF"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_NG"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Nigeria mobile money details",
                              "title": "Mobile Money NG"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_KE"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Kenya mobile money details",
                              "title": "Mobile Money KE"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_GH"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Mobile Money GH",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_ZA"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "South Africa mobile money details",
                              "title": "Mobile Money ZA"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_TZ"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Tanzania mobile money details",
                              "title": "Mobile Money TZ"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_UG"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Uganda mobile money details",
                              "title": "Mobile Money UG"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_RW"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Rwanda mobile money details",
                              "title": "Mobile Money RW"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_MW"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Malawi mobile money details",
                              "title": "Mobile Money MW"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_ZM"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Zambia mobile money details",
                              "title": "Mobile Money ZM"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_BW"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Botswana mobile money details",
                              "title": "Mobile Money BW"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_CD"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Mobile Money CD",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_XOF"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "West African CFA mobile money details",
                              "title": "Mobile Money XOF"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_XAF"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Central African CFA mobile money details",
                              "title": "Mobile Money XAF"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "description": "Bank code"
                                },
                                "destinationBankAccountNumber": {
                                  "type": "string",
                                  "description": "Bank account number (18-digit CLABE)"
                                },
                                "numericReference": {
                                  "type": "string",
                                  "description": "Numeric reference"
                                },
                                "notesReference": {
                                  "type": "string",
                                  "description": "Notes reference"
                                },
                                "destinationClabe": {
                                  "type": "string",
                                  "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_MX"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccountNumber",
                                "type"
                              ],
                              "description": "Mexican bank deposit details",
                              "title": "Bank Deposit MX"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPseNumber": {
                                  "type": "string",
                                  "description": "PSE number"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "PSE"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPseNumber",
                                "type"
                              ],
                              "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "PSE",
                              "deprecated": true
                            }
                          ],
                          "description": "Detailed withdrawal information",
                          "title": "WithdrawalInfo"
                        },
                        "source": {
                          "type": "string",
                          "enum": [
                            "ui",
                            "apiApp",
                            "externalApi",
                            "internal"
                          ],
                          "description": "Source of withdrawal creation",
                          "example": "externalApi"
                        },
                        "requires2FA": {
                          "type": "boolean",
                          "description": "Whether 2FA is required for this withdrawal",
                          "example": false
                        },
                        "twoFactorToken": {
                          "type": "string",
                          "description": "2FA token for email approval",
                          "example": "abc123"
                        },
                        "twoFactorApprovedAt": {
                          "type": "number",
                          "description": "Timestamp when 2FA was approved",
                          "example": 1723027132
                        },
                        "errorCode": {
                          "type": "string",
                          "description": "Error code when status is Review",
                          "example": "INSUFFICIENT_BALANCE"
                        },
                        "errorDetails": {
                          "type": "string",
                          "description": "Detailed error information",
                          "example": "Insufficient balance for withdrawal"
                        },
                        "reviewedBy": {
                          "type": "string",
                          "description": "Admin email who reviewed the withdrawal",
                          "example": "admin@example.com"
                        },
                        "reviewedAt": {
                          "type": "number",
                          "description": "Timestamp when review happened",
                          "example": 1723027132
                        }
                      },
                      "required": [
                        "withdrawalId",
                        "createdAt",
                        "amount",
                        "currency",
                        "fee",
                        "feeCurrency",
                        "status"
                      ],
                      "description": "Details of the withdrawal associated with the order"
                    },
                    "createdAt": {
                      "type": "number",
                      "description": "Creation time of the order (timestamp)",
                      "examples": [
                        1723027132,
                        1723027200,
                        1723027300
                      ]
                    },
                    "updatedAt": {
                      "type": "number",
                      "description": "Last update time of the order (timestamp)",
                      "examples": [
                        1723027132,
                        1723027200,
                        1723027300
                      ]
                    },
                    "status": {
                      "anyOf": [
                        {
                          "type": "string",
                          "enum": [
                            "Pending",
                            "Processing",
                            "Success",
                            "Failed",
                            "Canceled",
                            "Reviewing"
                          ],
                          "description": "Common status values that are shared across all operation types",
                          "examples": [
                            "Pending",
                            "Processing",
                            "Success",
                            "Failed",
                            "Canceled",
                            "Reviewing"
                          ]
                        },
                        {
                          "type": "string",
                          "enum": [
                            "Received",
                            "Exchanging",
                            "Exchanged",
                            "WithdrawProcessing",
                            "Withdrawn",
                            "OffRampProcessing",
                            "OffRamped",
                            "Deleted",
                            "PendingCancel",
                            "Closed",
                            "WaitingForFundsToExchange",
                            "WaitingForFundsToSend",
                            "WaitingForFundsToOffRamp",
                            "OffRampDocPending",
                            "OnRampDocPending",
                            "WaitingForConfirmations",
                            "PriceChanged",
                            "Refunded",
                            "PreparedToOffRamp",
                            "WithdrawOfframpProcessing",
                            "WaitingForFundsToSendOfframp",
                            "WaitingForPayoutSettlement",
                            "WithdrawPending",
                            "WithdrawPendingOfframp"
                          ]
                        }
                      ],
                      "description": "Status of the order. A newly created order is typically `Pending`; a balance-funded order may start further along.",
                      "examples": [
                        "Pending"
                      ]
                    },
                    "externalReference": {
                      "type": "string",
                      "description": "External reference of the order, as you supplied it on create."
                    },
                    "externalRefeference": {
                      "type": "string",
                      "description": "Deprecated misspelling of `externalReference` — same value. Read `externalReference` instead; this key remains for backward compatibility and will be removed in a future major version.",
                      "deprecated": true
                    },
                    "fee": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Total fee for the order once all the execution is completed",
                      "examples": [
                        6.37,
                        8.5,
                        10.25
                      ]
                    },
                    "expectedFee": {
                      "type": "number",
                      "minimum": 0,
                      "exclusiveMinimum": true,
                      "description": "Expected fee given the initial deposit amount",
                      "examples": [
                        6.88,
                        9.2,
                        11.5
                      ]
                    },
                    "expectedGasFee": {
                      "type": "number",
                      "description": "Expected gas fee if the withdrawal is with crypto",
                      "examples": [
                        6.88,
                        8.5,
                        10.25
                      ]
                    },
                    "feeCurrency": {
                      "type": "string",
                      "description": "Currency of the fee",
                      "examples": [
                        "EUR",
                        "USD",
                        "GBP"
                      ]
                    }
                  },
                  "required": [
                    "orderId",
                    "createdAt",
                    "status",
                    "fee",
                    "expectedFee",
                    "feeCurrency"
                  ],
                  "description": "Response schema for creating an order"
                }
              }
            }
          },
          "400": {
            "description": "Bad request — a required field is missing or invalid (e.g. destination address, unsupported balance currency, or a quote from another environment), or a malformed `Idempotency-Key` (invalid characters, over 128 characters, or the header sent more than once).",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "403": {
            "description": "The on-behalf-of accountId does not belong to this workspace",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "409": {
            "description": "`Idempotency-Key` conflict: the key was already used with a different payload or by a different endpoint, or an identical request is still in progress — see the Idempotent writes section of the guide",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/orders\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"quoteId\": \"123e4567-e89b-12d3-a456-426614174000\",\n      \"accountId\": \"jane.doe@example.com\",\n      \"destination\": {\n        \"contactId\": \"string\",\n        \"contactEmail\": \"string\",\n        \"addressId\": \"string\"\n      },\n      \"originCountry\": \"CI\",\n      \"userData\": {\n        \"userType\": \"individual\",\n        \"firstName\": \"John\",\n        \"lastName\": \"Doe\",\n        \"userEmail\": \"user@virtuabroker.com\",\n        \"address\": \"123 Main St, Anytown, ES\",\n        \"taxDocumentType\": \"CC\",\n        \"taxId\": \"123-45-6789\",\n        \"country\": \"ES\",\n        \"state\": \"Madrid\",\n        \"postalCode\": \"12345\",\n        \"city\": \"Madrid\",\n        \"dob\": \"1990-01-01\",\n        \"phoneNumber\": \"+447700900123\",\n        \"kycId\": \"kyc-12345\",\n        \"activity\": \"worker\"\n      },\n      \"destinationUserData\": {\n        \"userType\": \"individual\",\n        \"firstName\": \"John\",\n        \"lastName\": \"Doe\",\n        \"userEmail\": \"user@virtuabroker.com\",\n        \"address\": \"123 Main St, Anytown, ES\",\n        \"taxDocumentType\": \"CC\",\n        \"taxId\": \"123-45-6789\",\n        \"country\": \"ES\",\n        \"state\": \"Madrid\",\n        \"postalCode\": \"12345\",\n        \"city\": \"Madrid\",\n        \"dob\": \"1990-01-01\",\n        \"phoneNumber\": \"+447700900123\",\n        \"kycId\": \"kyc-12345\",\n        \"activity\": \"worker\"\n      },\n      \"destinationTransferData\": {\n        \"type\": \"BALANCE\"\n      },\n      \"externalReference\": \"order-2026-000123\",\n      \"integrationSessionId\": \"int_a1B2c3D4e5F6g7H8\",\n      \"tradeDetails\": {\n        \"businessType\": \"GOODS_TRADE\",\n        \"contractNo\": \"string\",\n        \"website\": \"string\",\n        \"products\": [\n          {\n            \"name\": \"string\",\n            \"quantity\": 0,\n            \"unit\": \"string\",\n            \"category\": \"string\"\n          }\n        ]\n      }\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api.virtuabroker.com/v1/orders\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"quoteId\": \"123e4567-e89b-12d3-a456-426614174000\",\n        \"accountId\": \"jane.doe@example.com\",\n        \"destination\": {\n            \"contactId\": \"string\",\n            \"contactEmail\": \"string\",\n            \"addressId\": \"string\"\n        },\n        \"originCountry\": \"CI\",\n        \"userData\": {\n            \"userType\": \"individual\",\n            \"firstName\": \"John\",\n            \"lastName\": \"Doe\",\n            \"userEmail\": \"user@virtuabroker.com\",\n            \"address\": \"123 Main St, Anytown, ES\",\n            \"taxDocumentType\": \"CC\",\n            \"taxId\": \"123-45-6789\",\n            \"country\": \"ES\",\n            \"state\": \"Madrid\",\n            \"postalCode\": \"12345\",\n            \"city\": \"Madrid\",\n            \"dob\": \"1990-01-01\",\n            \"phoneNumber\": \"+447700900123\",\n            \"kycId\": \"kyc-12345\",\n            \"activity\": \"worker\"\n        },\n        \"destinationUserData\": {\n            \"userType\": \"individual\",\n            \"firstName\": \"John\",\n            \"lastName\": \"Doe\",\n            \"userEmail\": \"user@virtuabroker.com\",\n            \"address\": \"123 Main St, Anytown, ES\",\n            \"taxDocumentType\": \"CC\",\n            \"taxId\": \"123-45-6789\",\n            \"country\": \"ES\",\n            \"state\": \"Madrid\",\n            \"postalCode\": \"12345\",\n            \"city\": \"Madrid\",\n            \"dob\": \"1990-01-01\",\n            \"phoneNumber\": \"+447700900123\",\n            \"kycId\": \"kyc-12345\",\n            \"activity\": \"worker\"\n        },\n        \"destinationTransferData\": {\n            \"type\": \"BALANCE\"\n        },\n        \"externalReference\": \"order-2026-000123\",\n        \"integrationSessionId\": \"int_a1B2c3D4e5F6g7H8\",\n        \"tradeDetails\": {\n            \"businessType\": \"GOODS_TRADE\",\n            \"contractNo\": \"string\",\n            \"website\": \"string\",\n            \"products\": [\n                {\n                    \"name\": \"string\",\n                    \"quantity\": 0,\n                    \"unit\": \"string\",\n                    \"category\": \"string\"\n                }\n            ]\n        }\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api.virtuabroker.com/v1/orders\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"quoteId\": \"123e4567-e89b-12d3-a456-426614174000\",\n  \"accountId\": \"jane.doe@example.com\",\n  \"destination\": {\n    \"contactId\": \"string\",\n    \"contactEmail\": \"string\",\n    \"addressId\": \"string\"\n  },\n  \"originCountry\": \"CI\",\n  \"userData\": {\n    \"userType\": \"individual\",\n    \"firstName\": \"John\",\n    \"lastName\": \"Doe\",\n    \"userEmail\": \"user@virtuabroker.com\",\n    \"address\": \"123 Main St, Anytown, ES\",\n    \"taxDocumentType\": \"CC\",\n    \"taxId\": \"123-45-6789\",\n    \"country\": \"ES\",\n    \"state\": \"Madrid\",\n    \"postalCode\": \"12345\",\n    \"city\": \"Madrid\",\n    \"dob\": \"1990-01-01\",\n    \"phoneNumber\": \"+447700900123\",\n    \"kycId\": \"kyc-12345\",\n    \"activity\": \"worker\"\n  },\n  \"destinationUserData\": {\n    \"userType\": \"individual\",\n    \"firstName\": \"John\",\n    \"lastName\": \"Doe\",\n    \"userEmail\": \"user@virtuabroker.com\",\n    \"address\": \"123 Main St, Anytown, ES\",\n    \"taxDocumentType\": \"CC\",\n    \"taxId\": \"123-45-6789\",\n    \"country\": \"ES\",\n    \"state\": \"Madrid\",\n    \"postalCode\": \"12345\",\n    \"city\": \"Madrid\",\n    \"dob\": \"1990-01-01\",\n    \"phoneNumber\": \"+447700900123\",\n    \"kycId\": \"kyc-12345\",\n    \"activity\": \"worker\"\n  },\n  \"destinationTransferData\": {\n    \"type\": \"BALANCE\"\n  },\n  \"externalReference\": \"order-2026-000123\",\n  \"integrationSessionId\": \"int_a1B2c3D4e5F6g7H8\",\n  \"tradeDetails\": {\n    \"businessType\": \"GOODS_TRADE\",\n    \"contractNo\": \"string\",\n    \"website\": \"string\",\n    \"products\": [\n      {\n        \"name\": \"string\",\n        \"quantity\": 0,\n        \"unit\": \"string\",\n        \"category\": \"string\"\n      }\n    ]\n  }\n}'"
          }
        ]
      },
      "get": {
        "summary": "List orders",
        "description": "This endpoint retrieves a list of orders based on various filters.",
        "tags": [
          "Orders"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "description": "Optional currency code to filter the items",
              "example": "EUR"
            },
            "required": false,
            "description": "Optional currency code to filter the items",
            "name": "currency",
            "in": "query"
          },
          {
            "schema": {
              "type": "number",
              "minimum": 0
            },
            "required": false,
            "name": "minAmount",
            "in": "query"
          },
          {
            "schema": {
              "type": "number",
              "minimum": 0
            },
            "required": false,
            "name": "maxAmount",
            "in": "query"
          },
          {
            "schema": {
              "type": "integer",
              "minimum": 0
            },
            "required": false,
            "name": "from",
            "in": "query"
          },
          {
            "schema": {
              "type": "integer",
              "minimum": 0
            },
            "required": false,
            "name": "to",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
              "description": "Email of the user making the request. For a business payer this matches operations under any of its identities — the representative email and the organisation account — so listings stay complete across both.",
              "example": "user@example.com"
            },
            "required": false,
            "description": "Email of the user making the request. For a business payer this matches operations under any of its identities — the representative email and the organisation account — so listings stay complete across both.",
            "name": "userEmail",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "description": "General search (e.g. email or text). When provided, backend may use it for userEmail or text search."
            },
            "required": false,
            "description": "General search (e.g. email or text). When provided, backend may use it for userEmail or text search.",
            "name": "search",
            "in": "query"
          },
          {
            "schema": {
              "type": "number",
              "minimum": 0
            },
            "required": false,
            "name": "limit",
            "in": "query"
          },
          {
            "schema": {
              "type": "number",
              "minimum": 0
            },
            "required": false,
            "name": "page",
            "in": "query"
          },
          {
            "schema": {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "Pending",
                    "Processing",
                    "Success",
                    "Failed",
                    "Canceled",
                    "Reviewing"
                  ],
                  "description": "Common status values that are shared across all operation types",
                  "examples": [
                    "Pending",
                    "Processing",
                    "Success",
                    "Failed",
                    "Canceled",
                    "Reviewing"
                  ]
                },
                {
                  "type": "string",
                  "enum": [
                    "Received",
                    "Exchanging",
                    "Exchanged",
                    "WithdrawProcessing",
                    "Withdrawn",
                    "OffRampProcessing",
                    "OffRamped",
                    "Deleted",
                    "PendingCancel",
                    "Closed",
                    "WaitingForFundsToExchange",
                    "WaitingForFundsToSend",
                    "WaitingForFundsToOffRamp",
                    "OffRampDocPending",
                    "OnRampDocPending",
                    "WaitingForConfirmations",
                    "PriceChanged",
                    "Refunded",
                    "PreparedToOffRamp",
                    "WithdrawOfframpProcessing",
                    "WaitingForFundsToSendOfframp",
                    "WaitingForPayoutSettlement",
                    "WithdrawPending",
                    "WithdrawPendingOfframp"
                  ]
                },
                {
                  "type": "array",
                  "items": {
                    "anyOf": [
                      {
                        "type": "string",
                        "enum": [
                          "Pending",
                          "Processing",
                          "Success",
                          "Failed",
                          "Canceled",
                          "Reviewing"
                        ],
                        "description": "Common status values that are shared across all operation types",
                        "examples": [
                          "Pending",
                          "Processing",
                          "Success",
                          "Failed",
                          "Canceled",
                          "Reviewing"
                        ]
                      },
                      {
                        "type": "string",
                        "enum": [
                          "Received",
                          "Exchanging",
                          "Exchanged",
                          "WithdrawProcessing",
                          "Withdrawn",
                          "OffRampProcessing",
                          "OffRamped",
                          "Deleted",
                          "PendingCancel",
                          "Closed",
                          "WaitingForFundsToExchange",
                          "WaitingForFundsToSend",
                          "WaitingForFundsToOffRamp",
                          "OffRampDocPending",
                          "OnRampDocPending",
                          "WaitingForConfirmations",
                          "PriceChanged",
                          "Refunded",
                          "PreparedToOffRamp",
                          "WithdrawOfframpProcessing",
                          "WaitingForFundsToSendOfframp",
                          "WaitingForPayoutSettlement",
                          "WithdrawPending",
                          "WithdrawPendingOfframp"
                        ]
                      }
                    ],
                    "description": "Status vocabulary accepted by the order-list status filter",
                    "examples": [
                      "Pending",
                      "Success",
                      "Failed",
                      "Received",
                      "Exchanging",
                      "Withdrawn"
                    ]
                  }
                }
              ],
              "description": "Optional status filter — a single status or an array of statuses. Use the statuses the API returns (Pending, Processing, Reviewing, Success, Failed, Canceled); the granular internal states are still accepted for backward compatibility.",
              "examples": [
                "Pending",
                [
                  "Pending",
                  "Success"
                ],
                [
                  "Pending",
                  "Processing",
                  "Success"
                ],
                [
                  "Success",
                  "Failed",
                  "Canceled"
                ]
              ]
            },
            "required": false,
            "description": "Optional status filter — a single status or an array of statuses. Use the statuses the API returns (Pending, Processing, Reviewing, Success, Failed, Canceled); the granular internal states are still accepted for backward compatibility.",
            "name": "status",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful retrieval of orders list",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "orderId": {
                        "type": "string",
                        "description": "ID of the order",
                        "examples": [
                          "01CLFXMT67II",
                          "2R7E5Y5KFXP8",
                          "4FWWRE3Y2URM"
                        ]
                      },
                      "deposit": {
                        "type": "object",
                        "properties": {
                          "depositId": {
                            "type": "string",
                            "minLength": 1,
                            "description": "ID of the deposit. Normally a 12-character internal id; deposits created before mid-2026 may carry a longer legacy id. Treat it as an opaque string."
                          },
                          "externalReference": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 128,
                            "description": "Your own reference for this deposit. Stored as-is and returned on create, detail and list, so you can look the deposit up by it after a network timeout instead of retrying blind. Not interpreted by VirtuaBroker and not shown to the payer — for the payer's transfer reference use depositInfo.referenceCode.",
                            "examples": [
                              "partner-ref-0001",
                              "inv_2026_00417"
                            ]
                          },
                          "userData": {
                            "oneOf": [
                              {
                                "type": "object",
                                "properties": {
                                  "userType": {
                                    "type": "string",
                                    "enum": [
                                      "individual"
                                    ]
                                  },
                                  "firstName": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 50,
                                    "description": "First name of the user making the deposit (or representative for business)",
                                    "examples": [
                                      "John",
                                      "Alice",
                                      "Bob"
                                    ]
                                  },
                                  "lastName": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 100,
                                    "description": "Last name of the user making the deposit (or representative for business)",
                                    "examples": [
                                      "Doe",
                                      "Smith",
                                      "Johnson"
                                    ]
                                  },
                                  "userEmail": {
                                    "type": "string",
                                    "maxLength": 254,
                                    "format": "email",
                                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                    "description": "Email of the user making the deposit",
                                    "examples": [
                                      "user@virtuabroker.com",
                                      "john.doe@example.com",
                                      "alice@example.com"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "maxLength": 150,
                                    "description": "Address of the user making the deposit",
                                    "examples": [
                                      "123 Main St, Anytown, ES",
                                      "456 Elm St, Anytown, ES",
                                      "789 Oak St, Anytown, ES"
                                    ]
                                  },
                                  "taxDocumentType": {
                                    "type": "string",
                                    "maxLength": 50,
                                    "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                    "examples": [
                                      "CC",
                                      "NIT",
                                      "CE",
                                      "NIF",
                                      "Other"
                                    ]
                                  },
                                  "taxId": {
                                    "type": "string",
                                    "maxLength": 30,
                                    "description": "Tax ID of the user making the deposit",
                                    "examples": [
                                      "123-45-6789",
                                      "987-65-4321",
                                      "111-22-3333"
                                    ]
                                  },
                                  "country": {
                                    "type": "string",
                                    "enum": [
                                      "US",
                                      "CA",
                                      "GB",
                                      "DE",
                                      "FR",
                                      "AU",
                                      "JP",
                                      "KR",
                                      "SE",
                                      "NO",
                                      "DK",
                                      "FI",
                                      "NL",
                                      "BE",
                                      "CH",
                                      "AT",
                                      "NZ",
                                      "SG",
                                      "IE",
                                      "LU",
                                      "PT",
                                      "ES",
                                      "IT",
                                      "GR",
                                      "CZ",
                                      "PL",
                                      "HU",
                                      "SK",
                                      "SI",
                                      "EE",
                                      "LT",
                                      "LV",
                                      "IS",
                                      "MT",
                                      "CY",
                                      "HR",
                                      "RO",
                                      "BG",
                                      "BR",
                                      "AR",
                                      "CL",
                                      "MX",
                                      "CO",
                                      "PE",
                                      "PA",
                                      "UY",
                                      "BO",
                                      "ZA",
                                      "NG",
                                      "KE",
                                      "GH",
                                      "TZ",
                                      "UG",
                                      "RW",
                                      "MW",
                                      "ZM",
                                      "BW",
                                      "CD",
                                      "CI",
                                      "CM",
                                      "IL",
                                      "AE",
                                      "QA",
                                      "SA",
                                      "OM",
                                      "KW",
                                      "BH",
                                      "MY",
                                      "PH",
                                      "TH",
                                      "VN",
                                      "ID",
                                      "IN",
                                      "LK",
                                      "NP",
                                      "BD",
                                      "PK",
                                      "EG",
                                      "MA",
                                      "DZ",
                                      "TN",
                                      "JO",
                                      "LB",
                                      "TR",
                                      "KH",
                                      "MM",
                                      "LA",
                                      "EN",
                                      "BT",
                                      "VE",
                                      "TW",
                                      "HK",
                                      "CN"
                                    ],
                                    "description": "Country code of the user making the deposit",
                                    "examples": [
                                      "ES",
                                      "US",
                                      "GB"
                                    ]
                                  },
                                  "state": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 100,
                                    "description": "State of the user making the deposit",
                                    "examples": [
                                      "Madrid",
                                      "New York",
                                      "London"
                                    ]
                                  },
                                  "postalCode": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 30,
                                    "description": "Postal code of the user making the deposit",
                                    "examples": [
                                      "12345",
                                      "67890",
                                      "abcde"
                                    ]
                                  },
                                  "city": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 100,
                                    "description": "City of the user making the deposit",
                                    "examples": [
                                      "Madrid",
                                      "New York",
                                      "London"
                                    ]
                                  },
                                  "dob": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 30,
                                    "description": "Date of birth of the user making the deposit",
                                    "examples": [
                                      "1990-01-01",
                                      "1995-05-15",
                                      "1988-12-31"
                                    ]
                                  },
                                  "phoneNumber": {
                                    "type": "string",
                                    "maxLength": 30,
                                    "description": "Phone number of the user making the deposit",
                                    "examples": [
                                      "+447700900123",
                                      "+447700900456",
                                      "+447700900789"
                                    ]
                                  },
                                  "kycId": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 300,
                                    "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                    "examples": [
                                      "kyc-12345",
                                      "kyc-67890",
                                      "kyc-abcde"
                                    ]
                                  },
                                  "activity": {
                                    "type": "string",
                                    "description": "Activity of the user making the deposit",
                                    "examples": [
                                      "worker",
                                      "business",
                                      "student"
                                    ]
                                  }
                                },
                                "required": [
                                  "userType",
                                  "firstName",
                                  "userEmail",
                                  "country"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "userType": {
                                    "type": "string",
                                    "enum": [
                                      "business"
                                    ]
                                  },
                                  "businessName": {
                                    "type": "string",
                                    "maxLength": 150,
                                    "description": "Business name (required when userType is business)",
                                    "examples": [
                                      "Acme Corp",
                                      "Tech Solutions Inc",
                                      "Global Services Ltd"
                                    ]
                                  },
                                  "firstName": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 50,
                                    "description": "First name of the user making the deposit (or representative for business)",
                                    "examples": [
                                      "John",
                                      "Alice",
                                      "Bob"
                                    ]
                                  },
                                  "userEmail": {
                                    "type": "string",
                                    "maxLength": 254,
                                    "format": "email",
                                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                    "description": "Email of the user making the deposit",
                                    "examples": [
                                      "user@virtuabroker.com",
                                      "john.doe@example.com",
                                      "alice@example.com"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "maxLength": 150,
                                    "description": "Address of the user making the deposit",
                                    "examples": [
                                      "123 Main St, Anytown, ES",
                                      "456 Elm St, Anytown, ES",
                                      "789 Oak St, Anytown, ES"
                                    ]
                                  },
                                  "taxDocumentType": {
                                    "type": "string",
                                    "maxLength": 50,
                                    "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                    "examples": [
                                      "CC",
                                      "NIT",
                                      "CE",
                                      "NIF",
                                      "Other"
                                    ]
                                  },
                                  "taxId": {
                                    "type": "string",
                                    "maxLength": 30,
                                    "description": "Tax ID of the user making the deposit",
                                    "examples": [
                                      "123-45-6789",
                                      "987-65-4321",
                                      "111-22-3333"
                                    ]
                                  },
                                  "country": {
                                    "type": "string",
                                    "enum": [
                                      "US",
                                      "CA",
                                      "GB",
                                      "DE",
                                      "FR",
                                      "AU",
                                      "JP",
                                      "KR",
                                      "SE",
                                      "NO",
                                      "DK",
                                      "FI",
                                      "NL",
                                      "BE",
                                      "CH",
                                      "AT",
                                      "NZ",
                                      "SG",
                                      "IE",
                                      "LU",
                                      "PT",
                                      "ES",
                                      "IT",
                                      "GR",
                                      "CZ",
                                      "PL",
                                      "HU",
                                      "SK",
                                      "SI",
                                      "EE",
                                      "LT",
                                      "LV",
                                      "IS",
                                      "MT",
                                      "CY",
                                      "HR",
                                      "RO",
                                      "BG",
                                      "BR",
                                      "AR",
                                      "CL",
                                      "MX",
                                      "CO",
                                      "PE",
                                      "PA",
                                      "UY",
                                      "BO",
                                      "ZA",
                                      "NG",
                                      "KE",
                                      "GH",
                                      "TZ",
                                      "UG",
                                      "RW",
                                      "MW",
                                      "ZM",
                                      "BW",
                                      "CD",
                                      "CI",
                                      "CM",
                                      "IL",
                                      "AE",
                                      "QA",
                                      "SA",
                                      "OM",
                                      "KW",
                                      "BH",
                                      "MY",
                                      "PH",
                                      "TH",
                                      "VN",
                                      "ID",
                                      "IN",
                                      "LK",
                                      "NP",
                                      "BD",
                                      "PK",
                                      "EG",
                                      "MA",
                                      "DZ",
                                      "TN",
                                      "JO",
                                      "LB",
                                      "TR",
                                      "KH",
                                      "MM",
                                      "LA",
                                      "EN",
                                      "BT",
                                      "VE",
                                      "TW",
                                      "HK",
                                      "CN"
                                    ],
                                    "description": "Country code of the user making the deposit",
                                    "examples": [
                                      "ES",
                                      "US",
                                      "GB"
                                    ]
                                  },
                                  "state": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 100,
                                    "description": "State of the user making the deposit",
                                    "examples": [
                                      "Madrid",
                                      "New York",
                                      "London"
                                    ]
                                  },
                                  "postalCode": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 30,
                                    "description": "Postal code of the user making the deposit",
                                    "examples": [
                                      "12345",
                                      "67890",
                                      "abcde"
                                    ]
                                  },
                                  "city": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 100,
                                    "description": "City of the user making the deposit",
                                    "examples": [
                                      "Madrid",
                                      "New York",
                                      "London"
                                    ]
                                  },
                                  "dob": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 30,
                                    "description": "Date of birth of the user making the deposit",
                                    "examples": [
                                      "1990-01-01",
                                      "1995-05-15",
                                      "1988-12-31"
                                    ]
                                  },
                                  "phoneNumber": {
                                    "type": "string",
                                    "maxLength": 30,
                                    "description": "Phone number of the user making the deposit",
                                    "examples": [
                                      "+447700900123",
                                      "+447700900456",
                                      "+447700900789"
                                    ]
                                  },
                                  "kycId": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 300,
                                    "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                    "examples": [
                                      "kyc-12345",
                                      "kyc-67890",
                                      "kyc-abcde"
                                    ]
                                  },
                                  "activity": {
                                    "type": "string",
                                    "description": "Activity of the user making the deposit",
                                    "examples": [
                                      "worker",
                                      "business",
                                      "student"
                                    ]
                                  }
                                },
                                "required": [
                                  "userType",
                                  "businessName",
                                  "firstName",
                                  "userEmail",
                                  "country"
                                ]
                              }
                            ],
                            "description": "User data of the person/company making the deposit",
                            "examples": [
                              {
                                "userType": "individual",
                                "firstName": "John",
                                "lastName": "Doe",
                                "userEmail": "user@virtuabroker.com",
                                "address": "123 Main St, Anytown, ES",
                                "taxId": "123-45-6789",
                                "country": "ES"
                              },
                              {
                                "userType": "individual",
                                "firstName": "Alice",
                                "lastName": "Smith",
                                "userEmail": "alice@example.com",
                                "address": "456 Elm St, Anytown, ES",
                                "taxId": "987-65-4321",
                                "country": "ES"
                              }
                            ]
                          },
                          "createdAt": {
                            "type": "number",
                            "description": "Creation time of the deposit",
                            "examples": [
                              1723027132,
                              1723027133,
                              1723027134
                            ]
                          },
                          "rail": {
                            "type": "string",
                            "enum": [
                              "BALANCE",
                              "SEPA",
                              "BTC",
                              "ETH",
                              "MATIC",
                              "POLYGON",
                              "CELO",
                              "TRON",
                              "SOLANA",
                              "ARBITRUM",
                              "OPTIMISM",
                              "AVALANCHE",
                              "BSC",
                              "BASE",
                              "XRP",
                              "PIX_BR",
                              "UPI",
                              "IMPS",
                              "TRY_BANK_TRANSFER",
                              "AED_BANK_TRANSFER",
                              "SPEI",
                              "IDR_BANK_TRANSFER",
                              "CREDIT_CARD",
                              "THAI_QR",
                              "VIET_QR",
                              "GCASH",
                              "ARGENTINA_BANK_TRANSFER",
                              "PSE",
                              "CLABE",
                              "PIX",
                              "BANK_DEPOSIT_COL",
                              "BANK_DEPOSIT_AR",
                              "BANK_DEPOSIT_CL",
                              "BANK_DEPOSIT_PE",
                              "BANK_DEPOSIT_BO",
                              "BANK_DEPOSIT_BR",
                              "BANK_DEPOSIT_NG",
                              "BANK_DEPOSIT_KE",
                              "BANK_DEPOSIT_GH",
                              "BANK_DEPOSIT_ZA",
                              "BANK_DEPOSIT_TZ",
                              "BANK_DEPOSIT_UG",
                              "BANK_DEPOSIT_RW",
                              "BANK_DEPOSIT_MW",
                              "BANK_DEPOSIT_ZM",
                              "BANK_DEPOSIT_BW",
                              "BANK_DEPOSIT_CD",
                              "BANK_DEPOSIT_XOF",
                              "BANK_DEPOSIT_XAF",
                              "MOBILE_MONEY_NG",
                              "MOBILE_MONEY_KE",
                              "MOBILE_MONEY_GH",
                              "MOBILE_MONEY_ZA",
                              "MOBILE_MONEY_TZ",
                              "MOBILE_MONEY_UG",
                              "MOBILE_MONEY_RW",
                              "MOBILE_MONEY_MW",
                              "MOBILE_MONEY_ZM",
                              "MOBILE_MONEY_BW",
                              "MOBILE_MONEY_CD",
                              "MOBILE_MONEY_XOF",
                              "MOBILE_MONEY_XAF",
                              "ACH_US",
                              "GBP_BANK_TRANSFER"
                            ],
                            "description": "Rail of the deposit"
                          },
                          "receivedAt": {
                            "type": "number",
                            "description": "Unix ms timestamp of when the funds for this deposit ARRIVED — recorded when the incoming payment is matched to the deposit, which is before it is credited. Present whenever funds have arrived, including a deposit whose funds are still held in review; omitted entirely when no funds ever arrived, so a never-funded or cancelled deposit has no value here and its presence is a reliable settlement signal for reconciliation. Identical on GET /v1/deposits and GET /v1/deposits/{depositId}. Note that the deposit object embedded in order and operation responses does not yet apply this rule — it returns the stored value. Not the creation time — use createdAt for that.",
                            "examples": [
                              1723027132000,
                              1723027133000,
                              1723027134000
                            ]
                          },
                          "expectedAmount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Amount expected of the deposit",
                            "examples": [
                              1000,
                              2000,
                              3000
                            ]
                          },
                          "amount": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Amount received of the deposit",
                            "examples": [
                              1000,
                              2000,
                              3000
                            ]
                          },
                          "currency": {
                            "anyOf": [
                              {
                                "type": "string",
                                "enum": [
                                  "EUR",
                                  "USD",
                                  "GBP",
                                  "BRL",
                                  "MXN",
                                  "ARS",
                                  "COP",
                                  "PEN",
                                  "NGN",
                                  "KES",
                                  "TZS",
                                  "UGX",
                                  "RWF",
                                  "MWK",
                                  "ZMW",
                                  "XOF",
                                  "XAF",
                                  "BWP"
                                ]
                              },
                              {
                                "type": "string",
                                "enum": [
                                  "USDC",
                                  "USDT",
                                  "CUSD",
                                  "BTC",
                                  "ETH",
                                  "POL",
                                  "SOL",
                                  "TRX",
                                  "AVAX",
                                  "XRP",
                                  "BNB"
                                ]
                              }
                            ],
                            "description": "Currency of the deposit",
                            "examples": [
                              "EUR",
                              "BRL"
                            ]
                          },
                          "fee": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Fee for the deposit. This value is written once the deposit has been executed. Meanwhile it will appear 0.",
                            "example": 10
                          },
                          "expectedFee": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Fee for the deposit. This value is correlated with the expected amount for the deposit.",
                            "examples": [
                              10,
                              20,
                              30
                            ]
                          },
                          "feeCurrency": {
                            "anyOf": [
                              {
                                "type": "string",
                                "enum": [
                                  "EUR",
                                  "USD",
                                  "GBP",
                                  "BRL",
                                  "MXN",
                                  "ARS",
                                  "COP",
                                  "PEN",
                                  "NGN",
                                  "KES",
                                  "TZS",
                                  "UGX",
                                  "RWF",
                                  "MWK",
                                  "ZMW",
                                  "XOF",
                                  "XAF",
                                  "BWP"
                                ]
                              },
                              {
                                "type": "string",
                                "enum": [
                                  "USDC",
                                  "USDT",
                                  "CUSD",
                                  "BTC",
                                  "ETH",
                                  "POL",
                                  "SOL",
                                  "TRX",
                                  "AVAX",
                                  "XRP",
                                  "BNB"
                                ]
                              }
                            ],
                            "description": "Currency of the fee",
                            "examples": [
                              "EUR",
                              "BRL"
                            ]
                          },
                          "status": {
                            "anyOf": [
                              {
                                "type": "string",
                                "enum": [
                                  "Pending",
                                  "Processing",
                                  "Success",
                                  "Failed",
                                  "Canceled",
                                  "Reviewing"
                                ],
                                "description": "Common status values that are shared across all operation types",
                                "examples": [
                                  "Pending",
                                  "Processing",
                                  "Success",
                                  "Failed",
                                  "Canceled",
                                  "Reviewing"
                                ]
                              },
                              {
                                "type": "string",
                                "enum": [
                                  "PendingCancel",
                                  "Received"
                                ]
                              }
                            ],
                            "description": "Status of the deposit",
                            "examples": [
                              "Pending",
                              "Success",
                              "Failed",
                              "Received",
                              "PendingCancel"
                            ]
                          },
                          "depositInfo": {
                            "oneOf": [
                              {
                                "type": "object",
                                "properties": {
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Name of the account holder",
                                    "example": "John Doe"
                                  },
                                  "iban": {
                                    "type": "string",
                                    "description": "SEPA Bank Account Number",
                                    "example": "DE8937XXXXXXXXXXXX3000"
                                  },
                                  "bic": {
                                    "type": "string",
                                    "description": "Bank BIC/SWIFT code",
                                    "example": "DEUTDEFF"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Name of the bank",
                                    "example": "Deutsche Bank"
                                  },
                                  "bankAddress": {
                                    "type": "string",
                                    "description": "Address of the bank",
                                    "example": "Taunusanlage 12"
                                  },
                                  "bankCity": {
                                    "type": "string",
                                    "description": "City of the bank",
                                    "example": "Frankfurt am Main"
                                  },
                                  "bankZipcode": {
                                    "type": "string",
                                    "description": "Zipcode of the bank",
                                    "example": "60325"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "enum": [
                                      "US",
                                      "CA",
                                      "GB",
                                      "DE",
                                      "FR",
                                      "AU",
                                      "JP",
                                      "KR",
                                      "SE",
                                      "NO",
                                      "DK",
                                      "FI",
                                      "NL",
                                      "BE",
                                      "CH",
                                      "AT",
                                      "NZ",
                                      "SG",
                                      "IE",
                                      "LU",
                                      "PT",
                                      "ES",
                                      "IT",
                                      "GR",
                                      "CZ",
                                      "PL",
                                      "HU",
                                      "SK",
                                      "SI",
                                      "EE",
                                      "LT",
                                      "LV",
                                      "IS",
                                      "MT",
                                      "CY",
                                      "HR",
                                      "RO",
                                      "BG",
                                      "BR",
                                      "AR",
                                      "CL",
                                      "MX",
                                      "CO",
                                      "PE",
                                      "PA",
                                      "UY",
                                      "BO",
                                      "ZA",
                                      "NG",
                                      "KE",
                                      "GH",
                                      "TZ",
                                      "UG",
                                      "RW",
                                      "MW",
                                      "ZM",
                                      "BW",
                                      "CD",
                                      "CI",
                                      "CM",
                                      "IL",
                                      "AE",
                                      "QA",
                                      "SA",
                                      "OM",
                                      "KW",
                                      "BH",
                                      "MY",
                                      "PH",
                                      "TH",
                                      "VN",
                                      "ID",
                                      "IN",
                                      "LK",
                                      "NP",
                                      "BD",
                                      "PK",
                                      "EG",
                                      "MA",
                                      "DZ",
                                      "TN",
                                      "JO",
                                      "LB",
                                      "TR",
                                      "KH",
                                      "MM",
                                      "LA",
                                      "EN",
                                      "BT",
                                      "VE",
                                      "TW",
                                      "HK",
                                      "CN"
                                    ],
                                    "description": "Country of the bank",
                                    "example": "DE"
                                  },
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "SEPA"
                                    ]
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount. It can be 0 for open-amount bank transfers where the sender chooses the final amount from their bank.",
                                    "example": 1000
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order. The user must include this code when making the deposit to ensure accurate processing. In cases where the reference code is incorrect or missing, we manually match orders based on the sender's name and other available details. In case the deposit is not matched, we will mark the order as Reviewing and the system will require manual attention.",
                                    "example": "REF123456"
                                  },
                                  "extraDepositMethods": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "methodType": {
                                          "type": "string",
                                          "enum": [
                                            "HOSTED_CHECKOUT"
                                          ],
                                          "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                                        },
                                        "url": {
                                          "type": "string",
                                          "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                                          "example": "https://checkout.example.com/pay/abc123"
                                        },
                                        "callbackUrl": {
                                          "type": "string",
                                          "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Payment reference for this method (equals the deposit/order reference)"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                                        },
                                        "currency": {
                                          "type": "string",
                                          "description": "Currency of this method"
                                        },
                                        "expiresAt": {
                                          "type": "number",
                                          "description": "Unix ms after which `url` is no longer valid, when known"
                                        }
                                      },
                                      "required": [
                                        "methodType",
                                        "url"
                                      ],
                                      "description": "An additional, optional way to pay this deposit"
                                    },
                                    "description": "Additional, optional ways to pay this same deposit (e.g. a hosted card page). The bank details above remain the primary method; ignore this field if you only support bank transfer."
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ],
                                "description": "Detailed information about a bank deposit, including the amount and a unique reference code for identification."
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "address": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "Crypto wallet address",
                                    "example": "0x1A2b3C4d5E6f7890AbCdEf1234567890AbCdEf12"
                                  },
                                  "network": {
                                    "type": "string",
                                    "enum": [
                                      "MATIC",
                                      "ETH",
                                      "CELO",
                                      "TRON",
                                      "BTC",
                                      "SOLANA",
                                      "XRP",
                                      "CARDANO",
                                      "BSC",
                                      "ARBITRUM",
                                      "OPTIMISM",
                                      "AVALANCHE",
                                      "BASE"
                                    ],
                                    "description": "Network for the deposit for crypto deposits",
                                    "examples": [
                                      "ETH",
                                      "MATIC",
                                      "CELO"
                                    ]
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Optional memo for the transaction",
                                    "example": "Payment for services"
                                  },
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "CRYPTO"
                                    ]
                                  },
                                  "qrCode": {
                                    "type": "string",
                                    "description": "Base64-encoded QR image for the deposit address",
                                    "example": "iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAIAAADTED8xAAABpklEQVR42u3BAQ0AAADCoPdPbQ8HFAAAAAAAAAAAAAAAAAA..."
                                  },
                                  "qrCodeUrl": {
                                    "type": "string",
                                    "format": "uri",
                                    "description": "7-day signed GCS URL of the QR code PNG"
                                  },
                                  "qrCodeExpiresAt": {
                                    "type": "number",
                                    "description": "Unix timestamp (ms) when qrCodeUrl expires"
                                  },
                                  "receivingAddress": {
                                    "type": "string",
                                    "description": "The wallet address where funds should be sent",
                                    "example": "0xAbCdEf0123456789AbCdEf0123456789AbCdEf01"
                                  },
                                  "tokenContract": {
                                    "type": "string",
                                    "description": "The ERC20 token contract address",
                                    "example": "0x765DE816845861e75A25fCA122bb6898B8B1282a"
                                  },
                                  "decimals": {
                                    "type": "number",
                                    "description": "Token decimals (default 18)",
                                    "example": 18
                                  }
                                },
                                "required": [
                                  "address",
                                  "network",
                                  "depositType"
                                ],
                                "description": "Crypto Deposit Information"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "base64QRCode": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "Base64 encoded QR code",
                                    "example": "base64QRCode"
                                  },
                                  "qrCodeString": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "The Pix copy-and-paste code (BR Code payload) the payer pastes into their bank app. Pass it through unchanged — it carries its own checksum.",
                                    "example": "qrCodeString"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order",
                                    "example": "REF123456"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "exclusiveMinimum": true,
                                    "description": "The monetary value to be deposited into the bank. This amount should be positive and accurately reflect the intended deposit.",
                                    "example": 1000
                                  },
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "PIX"
                                    ]
                                  }
                                },
                                "required": [
                                  "base64QRCode",
                                  "qrCodeString",
                                  "referenceCode",
                                  "amount",
                                  "depositType"
                                ],
                                "description": "Pix Deposit Information"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "CREDIT_CARD"
                                    ]
                                  }
                                },
                                "required": [
                                  "depositType"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "bankName": {
                                    "type": "string",
                                    "description": "Name of the bank (present when the rail provides it)"
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Name of the account holder (present when the rail provides it)"
                                  },
                                  "clabe": {
                                    "type": "string",
                                    "description": "CLABE number"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Bank account number (e.g. from the BANK_TRANSFER payment method)"
                                  },
                                  "reference": {
                                    "type": "string",
                                    "description": "Payment reference (e.g. from the BANK_TRANSFER payment method)"
                                  },
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "CLABE"
                                    ],
                                    "description": "Type of the deposit"
                                  }
                                },
                                "required": [
                                  "clabe",
                                  "depositType"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "url": {
                                    "type": "string",
                                    "description": "URL of the PSE payment"
                                  },
                                  "amountPrefilled": {
                                    "type": "boolean",
                                    "description": "Whether the payment page already carries the amount. When false or absent, the payer must enter it."
                                  },
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "PSE"
                                    ],
                                    "description": "Type of the deposit"
                                  }
                                },
                                "required": [
                                  "url",
                                  "depositType"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "BALANCE"
                                    ]
                                  }
                                },
                                "required": [
                                  "depositType"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "PENDING"
                                    ]
                                  },
                                  "currency": {
                                    "type": "string",
                                    "description": "Currency of the deposit"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the order/deposit"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount. It can be 0 while bank transfer details are open-amount or still being provisioned."
                                  },
                                  "extraDepositMethods": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "methodType": {
                                          "type": "string",
                                          "enum": [
                                            "HOSTED_CHECKOUT"
                                          ],
                                          "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                                        },
                                        "url": {
                                          "type": "string",
                                          "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                                          "example": "https://checkout.example.com/pay/abc123"
                                        },
                                        "callbackUrl": {
                                          "type": "string",
                                          "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Payment reference for this method (equals the deposit/order reference)"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                                        },
                                        "currency": {
                                          "type": "string",
                                          "description": "Currency of this method"
                                        },
                                        "expiresAt": {
                                          "type": "number",
                                          "description": "Unix ms after which `url` is no longer valid, when known"
                                        }
                                      },
                                      "required": [
                                        "methodType",
                                        "url"
                                      ],
                                      "description": "An additional, optional way to pay this deposit"
                                    },
                                    "description": "Additional ways to pay while the bank details are being provisioned (e.g. a hosted card page). Optional — ignore it and wait for the bank details if you only support bank transfer."
                                  },
                                  "pendingReason": {
                                    "type": "string",
                                    "enum": [
                                      "collection_account_activating",
                                      "accountless_per_account_corridor"
                                    ],
                                    "description": "Why the instructions are still being provisioned, when the reason is known. `collection_account_activating` means the collection account for this payer is being activated and payable details are expected shortly. `accountless_per_account_corridor` means this corridor collects only into a collection account dedicated to the paying account, this request names no account, and none can be created for it — so payable details will NOT arrive by waiting; create the deposit against an account instead. Absence never conveys timing on either surface: here it means only that no reason is classifiable, and an account-level deposit-method instruction never carries the field at all. Treat the values as an open set and ignore any you do not recognise."
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "currency",
                                  "referenceCode",
                                  "amount"
                                ],
                                "description": "Deposit details are being provisioned; poll the order/deposit or wait for webhook"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "IMPS"
                                    ]
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Name of the bank"
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Name of the account holder"
                                  },
                                  "ifsc": {
                                    "type": "string",
                                    "description": "ifsc number"
                                  },
                                  "type": {
                                    "type": "string",
                                    "description": "Type of the deposit"
                                  },
                                  "branch": {
                                    "type": "string",
                                    "description": "Branch of the bank"
                                  },
                                  "bank": {
                                    "type": "string",
                                    "description": "Bank of the account"
                                  },
                                  "otp": {
                                    "type": "string",
                                    "description": "OTP of the deposit"
                                  },
                                  "bankNotes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "number",
                                          "description": "Type of note: -1 for warning, 1 for info"
                                        },
                                        "msg": {
                                          "type": "string",
                                          "description": "Message content"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "msg"
                                      ]
                                    },
                                    "description": "Additional bank instructions"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "accountNumber",
                                  "bankName",
                                  "accountHolder",
                                  "ifsc",
                                  "type",
                                  "branch",
                                  "bank",
                                  "otp"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "UPI"
                                    ]
                                  },
                                  "vpa": {
                                    "type": "string",
                                    "description": "Virtual Payment Address"
                                  },
                                  "name": {
                                    "type": "string",
                                    "description": "Name of the account holder"
                                  },
                                  "otp": {
                                    "type": "string",
                                    "description": "OTP for the transaction"
                                  },
                                  "paymentLink": {
                                    "type": "string",
                                    "description": "Payment link"
                                  },
                                  "upiNotes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "number",
                                          "description": "Type of note: -1 for warning, 1 for info"
                                        },
                                        "msg": {
                                          "type": "string",
                                          "description": "Message content"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "msg"
                                      ]
                                    },
                                    "description": "Additional UPI instructions"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "vpa",
                                  "name",
                                  "otp",
                                  "paymentLink"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "AED_BANK_TRANSFER"
                                    ]
                                  },
                                  "iban": {
                                    "type": "string",
                                    "description": "International Bank Account Number"
                                  },
                                  "name": {
                                    "type": "string",
                                    "description": "Name of the account holder"
                                  },
                                  "bank": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "type": {
                                    "type": "string",
                                    "description": "Account type"
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Bank address"
                                  },
                                  "email": {
                                    "type": "string",
                                    "description": "Contact email"
                                  },
                                  "phoneNumber": {
                                    "type": "string",
                                    "description": "Contact phone number"
                                  },
                                  "transferCode": {
                                    "type": "string",
                                    "description": "Transfer code"
                                  },
                                  "poBox": {
                                    "type": "string",
                                    "description": "P.O. Box"
                                  },
                                  "otp": {
                                    "type": "string",
                                    "description": "OTP for the transaction"
                                  },
                                  "bankNotes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "number",
                                          "description": "Type of note: -1 for warning, 1 for info"
                                        },
                                        "msg": {
                                          "type": "string",
                                          "description": "Message content"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "msg"
                                      ]
                                    },
                                    "description": "Additional bank instructions"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "iban",
                                  "name",
                                  "bank",
                                  "type",
                                  "address",
                                  "email",
                                  "phoneNumber",
                                  "transferCode",
                                  "poBox",
                                  "otp"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "SPEI"
                                    ]
                                  },
                                  "clabe": {
                                    "type": "string",
                                    "description": "CLABE number"
                                  },
                                  "name": {
                                    "type": "string",
                                    "description": "Name of the account holder"
                                  },
                                  "bank": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankNotes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "number",
                                          "description": "Type of note: -1 for warning, 1 for info"
                                        },
                                        "msg": {
                                          "type": "string",
                                          "description": "Message content"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "msg"
                                      ]
                                    },
                                    "description": "Additional bank instructions"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "clabe",
                                  "name",
                                  "bank"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "TRY_BANK_TRANSFER"
                                    ]
                                  },
                                  "iban": {
                                    "type": "string",
                                    "description": "International Bank Account Number"
                                  },
                                  "name": {
                                    "type": "string",
                                    "description": "Name of the account holder"
                                  },
                                  "bank": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "otp": {
                                    "type": "string",
                                    "description": "OTP for the transaction"
                                  },
                                  "bankNotes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "number",
                                          "description": "Type of note: -1 for warning, 1 for info"
                                        },
                                        "msg": {
                                          "type": "string",
                                          "description": "Message content"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "msg"
                                      ]
                                    },
                                    "description": "Additional bank instructions"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "iban",
                                  "name",
                                  "bank",
                                  "otp"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "IDR_BANK_TRANSFER"
                                    ]
                                  },
                                  "virtualAccount": {
                                    "type": "string",
                                    "description": "Virtual account number"
                                  },
                                  "name": {
                                    "type": "string",
                                    "description": "Name of the account holder"
                                  },
                                  "bank": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankNotes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "number",
                                          "description": "Type of note: -1 for warning, 1 for info"
                                        },
                                        "msg": {
                                          "type": "string",
                                          "description": "Message content"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "msg"
                                      ]
                                    },
                                    "description": "Additional bank instructions"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "virtualAccount",
                                  "name",
                                  "bank"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "THAI_QR"
                                    ]
                                  },
                                  "qrCode": {
                                    "type": "string",
                                    "description": "QR code"
                                  },
                                  "otp": {
                                    "type": "string",
                                    "description": "OTP for the transaction"
                                  },
                                  "bankNotes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "number",
                                          "description": "Type of note: -1 for warning, 1 for info"
                                        },
                                        "msg": {
                                          "type": "string",
                                          "description": "Message content"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "msg"
                                      ]
                                    },
                                    "description": "Additional bank instructions"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "qrCode",
                                  "otp"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "VIET_QR"
                                    ]
                                  },
                                  "qrCode": {
                                    "type": "string",
                                    "description": "QR code"
                                  },
                                  "otp": {
                                    "type": "string",
                                    "description": "OTP for the transaction"
                                  },
                                  "bankNotes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "number",
                                          "description": "Type of note: -1 for warning, 1 for info"
                                        },
                                        "msg": {
                                          "type": "string",
                                          "description": "Message content"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "msg"
                                      ]
                                    },
                                    "description": "Additional bank instructions"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "qrCode",
                                  "otp"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "GCASH"
                                    ]
                                  },
                                  "qrCode": {
                                    "type": "string",
                                    "description": "QR code"
                                  },
                                  "otp": {
                                    "type": "string",
                                    "description": "OTP for the transaction"
                                  },
                                  "bankNotes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "number",
                                          "description": "Type of note: -1 for warning, 1 for info"
                                        },
                                        "msg": {
                                          "type": "string",
                                          "description": "Message content"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "msg"
                                      ]
                                    },
                                    "description": "Additional bank instructions"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "qrCode",
                                  "otp"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "ARGENTINA_BANK_TRANSFER"
                                    ]
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Account number"
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "accountNumber"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "ACH_US"
                                    ]
                                  },
                                  "routingNumber": {
                                    "type": "string",
                                    "description": "US bank ABA routing number"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "US bank account number"
                                  },
                                  "beneficiaryName": {
                                    "type": "string",
                                    "description": "Beneficiary name on the account"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Name of the bank"
                                  },
                                  "bankAddress": {
                                    "type": "string",
                                    "description": "Address of the bank"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names (e.g. ACH, Wire)"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount in USD"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "Reference code to include in the wire/ACH transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "routingNumber",
                                  "accountNumber",
                                  "beneficiaryName",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "ACH_PULL"
                                    ]
                                  }
                                },
                                "required": [
                                  "depositType"
                                ],
                                "description": "Funds are pulled from the holder's own linked US bank account; no transfer instructions apply"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "LOCALBANK"
                                    ],
                                    "description": "Deprecated generic local-bank payin type. Superseded by the corridor-specific deposit types (e.g. SEPA, ACH_US, GBP_BANK_TRANSFER, CLABE/SPEI, PIX, ARGENTINA_BANK_TRANSFER, BANK_DEPOSIT_<CC>). Still returned on some corridors and on historical records, so integrators must continue to handle it. Discover the applicable per-currency method via GET /v1/currencies/{currency}/payin-schema.",
                                    "deprecated": true
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "GBP_BANK_TRANSFER"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "UK bank account number"
                                  },
                                  "sortCode": {
                                    "type": "string",
                                    "description": "UK sort code"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Name of the bank"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names (e.g. Faster Payments, CHAPS, BACS)"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount in GBP"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "Reference code to include in the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "accountHolder",
                                  "accountNumber",
                                  "sortCode",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_COL"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_CL"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_BO"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_BR"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_NG"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_KE"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_GH"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_ZA"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_TZ"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_UG"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_RW"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_MW"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_ZM"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_BW"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_CD"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_XOF"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_XAF"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_NG"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_KE"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_GH"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_ZA"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_TZ"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_UG"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_RW"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_MW"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_ZM"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_BW"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_CD"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_XOF"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "depositType": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_XAF"
                                    ]
                                  },
                                  "accountHolder": {
                                    "type": "string",
                                    "description": "Account holder name"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "Local bank account number"
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "bankCountry": {
                                    "type": "string",
                                    "description": "ISO-3166 country code"
                                  },
                                  "routingCodes": {
                                    "type": "array",
                                    "items": {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                        },
                                        "value": {
                                          "type": "string",
                                          "description": "Routing code value"
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "value"
                                      ]
                                    },
                                    "description": "Routing identifiers (e.g. sort code, routing number)"
                                  },
                                  "schemes": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Accepted payment scheme names for this account"
                                  },
                                  "amount": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Expected deposit amount"
                                  },
                                  "referenceCode": {
                                    "type": "string",
                                    "description": "Reference code for the transfer"
                                  }
                                },
                                "required": [
                                  "depositType",
                                  "amount",
                                  "referenceCode"
                                ]
                              }
                            ],
                            "description": "Details of the deposit",
                            "examples": [
                              {
                                "accountHolder": "John Doe",
                                "iban": "DE8937XXXXXXXXXXXX3000",
                                "bic": "COBADEFFXXX",
                                "bankName": "Commerzbank",
                                "bankAddress": "Mainzer Landstrasse 151-153",
                                "bankCity": "Frankfurt",
                                "bankZipcode": "60327",
                                "bankCountry": "DE",
                                "amount": 1000,
                                "referenceCode": "ABC123",
                                "depositType": "SEPA"
                              }
                            ]
                          },
                          "depositInfoPending": {
                            "type": "boolean",
                            "description": "True while the payment instructions are still being prepared. Poll this deposit until it is false (or absent) before showing the instructions to the payer."
                          },
                          "complianceHold": {
                            "type": "object",
                            "properties": {
                              "reason": {
                                "type": "string",
                                "enum": [
                                  "screening",
                                  "fiat_monitoring"
                                ],
                                "description": "Compliance hold reason"
                              }
                            },
                            "required": [
                              "reason"
                            ],
                            "description": "Present while the inbound transfer funding this deposit is held in provider compliance review. The deposit stays Reviewing (amount 0, never credited) until the hold clears (promote to Received) or the transfer is rejected/returned (terminalize)."
                          }
                        },
                        "required": [
                          "depositId",
                          "createdAt",
                          "expectedAmount",
                          "amount",
                          "currency",
                          "fee",
                          "expectedFee",
                          "feeCurrency",
                          "status",
                          "depositInfo"
                        ],
                        "description": "Details of the deposit associated with the order"
                      },
                      "trade": {
                        "type": "object",
                        "properties": {
                          "tradeId": {
                            "type": "string",
                            "description": "ID of the trade",
                            "example": "123e4567-e89b-12d3-a456-426614174000"
                          },
                          "createdAt": {
                            "type": "number",
                            "description": "Creation time of the trade",
                            "example": 1723027132
                          },
                          "pair": {
                            "type": "string",
                            "description": "Asset pair to trade",
                            "example": "BTC/EUR"
                          },
                          "tradeType": {
                            "type": "string",
                            "enum": [
                              "buy",
                              "sell"
                            ],
                            "description": "Type of trade"
                          },
                          "volume": {
                            "type": "number",
                            "minimum": 0,
                            "exclusiveMinimum": true,
                            "description": "Order quantity in lots",
                            "example": 0.5
                          },
                          "price": {
                            "type": "number",
                            "minimum": 0,
                            "exclusiveMinimum": true,
                            "description": "Price at which to place the order based on the pair",
                            "example": 30000
                          },
                          "conversionRate": {
                            "type": "number",
                            "minimum": 0,
                            "exclusiveMinimum": true,
                            "description": "Conversion rate at which to place the order based on the pair",
                            "example": 30000
                          },
                          "fee": {
                            "type": "number",
                            "minimum": 0,
                            "description": "Fee for the trade",
                            "example": 0.1
                          },
                          "feeCurrency": {
                            "type": "string",
                            "description": "Currency of the fee",
                            "example": "EUR"
                          },
                          "userEmail": {
                            "type": "string",
                            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                            "description": "Email of the user making the trade",
                            "example": "user@example.com"
                          }
                        },
                        "required": [
                          "tradeId",
                          "createdAt",
                          "pair",
                          "tradeType",
                          "volume",
                          "fee",
                          "feeCurrency",
                          "userEmail"
                        ],
                        "description": "Details of the trade associated with the order"
                      },
                      "withdraw": {
                        "type": "object",
                        "properties": {
                          "withdrawalId": {
                            "anyOf": [
                              {
                                "type": "string",
                                "minLength": 12,
                                "maxLength": 12,
                                "pattern": "^[A-Z0-9]{12}$",
                                "examples": [
                                  "01CLFXMT67II",
                                  "2R7E5Y5KFXP8",
                                  "4FWWRE3Y2URM"
                                ]
                              },
                              {
                                "type": "string",
                                "format": "uuid"
                              }
                            ],
                            "description": "ID of the withdrawal"
                          },
                          "userData": {
                            "oneOf": [
                              {
                                "type": "object",
                                "properties": {
                                  "userType": {
                                    "type": "string",
                                    "enum": [
                                      "individual"
                                    ]
                                  },
                                  "firstName": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 50,
                                    "description": "First name of the user making the deposit (or representative for business)",
                                    "examples": [
                                      "John",
                                      "Alice",
                                      "Bob"
                                    ]
                                  },
                                  "lastName": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 100,
                                    "description": "Last name of the user making the deposit (or representative for business)",
                                    "examples": [
                                      "Doe",
                                      "Smith",
                                      "Johnson"
                                    ]
                                  },
                                  "userEmail": {
                                    "type": "string",
                                    "maxLength": 254,
                                    "format": "email",
                                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                    "description": "Email of the user making the deposit",
                                    "examples": [
                                      "user@virtuabroker.com",
                                      "john.doe@example.com",
                                      "alice@example.com"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "maxLength": 150,
                                    "description": "Address of the user making the deposit",
                                    "examples": [
                                      "123 Main St, Anytown, ES",
                                      "456 Elm St, Anytown, ES",
                                      "789 Oak St, Anytown, ES"
                                    ]
                                  },
                                  "taxDocumentType": {
                                    "type": "string",
                                    "maxLength": 50,
                                    "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                    "examples": [
                                      "CC",
                                      "NIT",
                                      "CE",
                                      "NIF",
                                      "Other"
                                    ]
                                  },
                                  "taxId": {
                                    "type": "string",
                                    "maxLength": 30,
                                    "description": "Tax ID of the user making the deposit",
                                    "examples": [
                                      "123-45-6789",
                                      "987-65-4321",
                                      "111-22-3333"
                                    ]
                                  },
                                  "country": {
                                    "type": "string",
                                    "enum": [
                                      "US",
                                      "CA",
                                      "GB",
                                      "DE",
                                      "FR",
                                      "AU",
                                      "JP",
                                      "KR",
                                      "SE",
                                      "NO",
                                      "DK",
                                      "FI",
                                      "NL",
                                      "BE",
                                      "CH",
                                      "AT",
                                      "NZ",
                                      "SG",
                                      "IE",
                                      "LU",
                                      "PT",
                                      "ES",
                                      "IT",
                                      "GR",
                                      "CZ",
                                      "PL",
                                      "HU",
                                      "SK",
                                      "SI",
                                      "EE",
                                      "LT",
                                      "LV",
                                      "IS",
                                      "MT",
                                      "CY",
                                      "HR",
                                      "RO",
                                      "BG",
                                      "BR",
                                      "AR",
                                      "CL",
                                      "MX",
                                      "CO",
                                      "PE",
                                      "PA",
                                      "UY",
                                      "BO",
                                      "ZA",
                                      "NG",
                                      "KE",
                                      "GH",
                                      "TZ",
                                      "UG",
                                      "RW",
                                      "MW",
                                      "ZM",
                                      "BW",
                                      "CD",
                                      "CI",
                                      "CM",
                                      "IL",
                                      "AE",
                                      "QA",
                                      "SA",
                                      "OM",
                                      "KW",
                                      "BH",
                                      "MY",
                                      "PH",
                                      "TH",
                                      "VN",
                                      "ID",
                                      "IN",
                                      "LK",
                                      "NP",
                                      "BD",
                                      "PK",
                                      "EG",
                                      "MA",
                                      "DZ",
                                      "TN",
                                      "JO",
                                      "LB",
                                      "TR",
                                      "KH",
                                      "MM",
                                      "LA",
                                      "EN",
                                      "BT",
                                      "VE",
                                      "TW",
                                      "HK",
                                      "CN"
                                    ],
                                    "description": "Country code of the user making the deposit",
                                    "examples": [
                                      "ES",
                                      "US",
                                      "GB"
                                    ]
                                  },
                                  "state": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 100,
                                    "description": "State of the user making the deposit",
                                    "examples": [
                                      "Madrid",
                                      "New York",
                                      "London"
                                    ]
                                  },
                                  "postalCode": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 30,
                                    "description": "Postal code of the user making the deposit",
                                    "examples": [
                                      "12345",
                                      "67890",
                                      "abcde"
                                    ]
                                  },
                                  "city": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 100,
                                    "description": "City of the user making the deposit",
                                    "examples": [
                                      "Madrid",
                                      "New York",
                                      "London"
                                    ]
                                  },
                                  "dob": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 30,
                                    "description": "Date of birth of the user making the deposit",
                                    "examples": [
                                      "1990-01-01",
                                      "1995-05-15",
                                      "1988-12-31"
                                    ]
                                  },
                                  "phoneNumber": {
                                    "type": "string",
                                    "maxLength": 30,
                                    "description": "Phone number of the user making the deposit",
                                    "examples": [
                                      "+447700900123",
                                      "+447700900456",
                                      "+447700900789"
                                    ]
                                  },
                                  "kycId": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 300,
                                    "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                    "examples": [
                                      "kyc-12345",
                                      "kyc-67890",
                                      "kyc-abcde"
                                    ]
                                  },
                                  "activity": {
                                    "type": "string",
                                    "description": "Activity of the user making the deposit",
                                    "examples": [
                                      "worker",
                                      "business",
                                      "student"
                                    ]
                                  }
                                },
                                "required": [
                                  "userType",
                                  "firstName",
                                  "userEmail",
                                  "country"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "userType": {
                                    "type": "string",
                                    "enum": [
                                      "business"
                                    ]
                                  },
                                  "businessName": {
                                    "type": "string",
                                    "maxLength": 150,
                                    "description": "Business name (required when userType is business)",
                                    "examples": [
                                      "Acme Corp",
                                      "Tech Solutions Inc",
                                      "Global Services Ltd"
                                    ]
                                  },
                                  "firstName": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 50,
                                    "description": "First name of the user making the deposit (or representative for business)",
                                    "examples": [
                                      "John",
                                      "Alice",
                                      "Bob"
                                    ]
                                  },
                                  "userEmail": {
                                    "type": "string",
                                    "maxLength": 254,
                                    "format": "email",
                                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                    "description": "Email of the user making the deposit",
                                    "examples": [
                                      "user@virtuabroker.com",
                                      "john.doe@example.com",
                                      "alice@example.com"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "maxLength": 150,
                                    "description": "Address of the user making the deposit",
                                    "examples": [
                                      "123 Main St, Anytown, ES",
                                      "456 Elm St, Anytown, ES",
                                      "789 Oak St, Anytown, ES"
                                    ]
                                  },
                                  "taxDocumentType": {
                                    "type": "string",
                                    "maxLength": 50,
                                    "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                    "examples": [
                                      "CC",
                                      "NIT",
                                      "CE",
                                      "NIF",
                                      "Other"
                                    ]
                                  },
                                  "taxId": {
                                    "type": "string",
                                    "maxLength": 30,
                                    "description": "Tax ID of the user making the deposit",
                                    "examples": [
                                      "123-45-6789",
                                      "987-65-4321",
                                      "111-22-3333"
                                    ]
                                  },
                                  "country": {
                                    "type": "string",
                                    "enum": [
                                      "US",
                                      "CA",
                                      "GB",
                                      "DE",
                                      "FR",
                                      "AU",
                                      "JP",
                                      "KR",
                                      "SE",
                                      "NO",
                                      "DK",
                                      "FI",
                                      "NL",
                                      "BE",
                                      "CH",
                                      "AT",
                                      "NZ",
                                      "SG",
                                      "IE",
                                      "LU",
                                      "PT",
                                      "ES",
                                      "IT",
                                      "GR",
                                      "CZ",
                                      "PL",
                                      "HU",
                                      "SK",
                                      "SI",
                                      "EE",
                                      "LT",
                                      "LV",
                                      "IS",
                                      "MT",
                                      "CY",
                                      "HR",
                                      "RO",
                                      "BG",
                                      "BR",
                                      "AR",
                                      "CL",
                                      "MX",
                                      "CO",
                                      "PE",
                                      "PA",
                                      "UY",
                                      "BO",
                                      "ZA",
                                      "NG",
                                      "KE",
                                      "GH",
                                      "TZ",
                                      "UG",
                                      "RW",
                                      "MW",
                                      "ZM",
                                      "BW",
                                      "CD",
                                      "CI",
                                      "CM",
                                      "IL",
                                      "AE",
                                      "QA",
                                      "SA",
                                      "OM",
                                      "KW",
                                      "BH",
                                      "MY",
                                      "PH",
                                      "TH",
                                      "VN",
                                      "ID",
                                      "IN",
                                      "LK",
                                      "NP",
                                      "BD",
                                      "PK",
                                      "EG",
                                      "MA",
                                      "DZ",
                                      "TN",
                                      "JO",
                                      "LB",
                                      "TR",
                                      "KH",
                                      "MM",
                                      "LA",
                                      "EN",
                                      "BT",
                                      "VE",
                                      "TW",
                                      "HK",
                                      "CN"
                                    ],
                                    "description": "Country code of the user making the deposit",
                                    "examples": [
                                      "ES",
                                      "US",
                                      "GB"
                                    ]
                                  },
                                  "state": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 100,
                                    "description": "State of the user making the deposit",
                                    "examples": [
                                      "Madrid",
                                      "New York",
                                      "London"
                                    ]
                                  },
                                  "postalCode": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 30,
                                    "description": "Postal code of the user making the deposit",
                                    "examples": [
                                      "12345",
                                      "67890",
                                      "abcde"
                                    ]
                                  },
                                  "city": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 100,
                                    "description": "City of the user making the deposit",
                                    "examples": [
                                      "Madrid",
                                      "New York",
                                      "London"
                                    ]
                                  },
                                  "dob": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 30,
                                    "description": "Date of birth of the user making the deposit",
                                    "examples": [
                                      "1990-01-01",
                                      "1995-05-15",
                                      "1988-12-31"
                                    ]
                                  },
                                  "phoneNumber": {
                                    "type": "string",
                                    "maxLength": 30,
                                    "description": "Phone number of the user making the deposit",
                                    "examples": [
                                      "+447700900123",
                                      "+447700900456",
                                      "+447700900789"
                                    ]
                                  },
                                  "kycId": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 300,
                                    "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                    "examples": [
                                      "kyc-12345",
                                      "kyc-67890",
                                      "kyc-abcde"
                                    ]
                                  },
                                  "activity": {
                                    "type": "string",
                                    "description": "Activity of the user making the deposit",
                                    "examples": [
                                      "worker",
                                      "business",
                                      "student"
                                    ]
                                  }
                                },
                                "required": [
                                  "userType",
                                  "businessName",
                                  "firstName",
                                  "userEmail",
                                  "country"
                                ]
                              }
                            ],
                            "description": "User data for the withdrawal"
                          },
                          "createdAt": {
                            "type": "number",
                            "description": "Creation time of the withdrawal",
                            "example": 1723027132
                          },
                          "updatedAt": {
                            "type": "number",
                            "description": "Last update time of the withdrawal",
                            "example": 1723027132
                          },
                          "userEmail": {
                            "type": "string",
                            "format": "email",
                            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                            "description": "Email of the user making the request",
                            "example": "user@example.com"
                          },
                          "amount": {
                            "type": "number",
                            "description": "Amount to be withdrawn. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
                            "example": 1000
                          },
                          "currency": {
                            "type": "string",
                            "description": "Currency of the withdrawal",
                            "example": "EUR"
                          },
                          "fee": {
                            "type": "number",
                            "description": "Fee for the withdrawal. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
                            "example": 10
                          },
                          "feeCurrency": {
                            "type": "string",
                            "description": "Currency of the fee",
                            "example": "EUR"
                          },
                          "destinationTransferData": {
                            "oneOf": [
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BALANCE"
                                    ]
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "Balance transfer details",
                                "title": "Balance"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "iban": {
                                    "type": "string",
                                    "description": "IBAN number"
                                  },
                                  "bic": {
                                    "type": "string",
                                    "description": "BIC number (optional)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "Country code"
                                  },
                                  "accountType": {
                                    "type": "string",
                                    "enum": [
                                      "PERSONAL",
                                      "BUSINESS"
                                    ],
                                    "default": "PERSONAL",
                                    "description": "Account type (optional)"
                                  },
                                  "city": {
                                    "type": "string",
                                    "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                                  },
                                  "postalCode": {
                                    "type": "string",
                                    "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "SEPA"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "iban",
                                  "country",
                                  "type"
                                ],
                                "description": "SEPA transfer details",
                                "title": "SEPA"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "UK bank account number"
                                  },
                                  "sortCode": {
                                    "type": "string",
                                    "description": "UK sort code"
                                  },
                                  "country": {
                                    "type": "string",
                                    "enum": [
                                      "GB"
                                    ],
                                    "default": "GB",
                                    "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                                  },
                                  "accountType": {
                                    "type": "string",
                                    "enum": [
                                      "PERSONAL",
                                      "BUSINESS"
                                    ],
                                    "default": "PERSONAL",
                                    "description": "Account type (optional)"
                                  },
                                  "city": {
                                    "type": "string",
                                    "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                                  },
                                  "postalCode": {
                                    "type": "string",
                                    "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "GBP_BANK_TRANSFER"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "accountNumber",
                                  "sortCode",
                                  "type"
                                ],
                                "description": "GBP domestic bank transfer details",
                                "title": "BankDepositGB"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "US bank account number"
                                  },
                                  "routingNumber": {
                                    "type": "string",
                                    "description": "US ABA routing number"
                                  },
                                  "country": {
                                    "type": "string",
                                    "enum": [
                                      "US"
                                    ],
                                    "default": "US",
                                    "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                                  },
                                  "accountType": {
                                    "type": "string",
                                    "enum": [
                                      "PERSONAL",
                                      "BUSINESS"
                                    ],
                                    "default": "PERSONAL",
                                    "description": "Account type (optional)"
                                  },
                                  "bankAccountType": {
                                    "type": "string",
                                    "enum": [
                                      "CHECKING",
                                      "SAVINGS"
                                    ],
                                    "default": "CHECKING",
                                    "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                                  },
                                  "city": {
                                    "type": "string",
                                    "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                                  },
                                  "postalCode": {
                                    "type": "string",
                                    "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                                  },
                                  "state": {
                                    "type": "string",
                                    "pattern": "^[A-Z]{2}$",
                                    "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "ACH_US"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "accountNumber",
                                  "routingNumber",
                                  "state",
                                  "type"
                                ],
                                "description": "USD ACH transfer details",
                                "title": "AchUS"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "linkedBankAccount"
                                    ]
                                  },
                                  "accountLinkId": {
                                    "type": "string",
                                    "pattern": "^alnk_[0-9a-f]{24}$",
                                    "description": "Identifier of one of the account holder own linked bank accounts",
                                    "examples": [
                                      "alnk_0123456789abcdef01234567"
                                    ]
                                  }
                                },
                                "required": [
                                  "type",
                                  "accountLinkId"
                                ],
                                "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                                "title": "LinkedBankAccount",
                                "deprecated": true
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "ETH"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Memo for the wallet, when the chain uses one"
                                  },
                                  "txId": {
                                    "type": "string",
                                    "description": "Blockchain transaction ID"
                                  },
                                  "txUrlScan": {
                                    "type": "string",
                                    "description": "Blockchain explorer URL for the transaction"
                                  },
                                  "destinationWalletAddress": {
                                    "type": "string",
                                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                  },
                                  "destinationWalletMemo": {
                                    "type": "string",
                                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                  },
                                  "destinationNetwork": {
                                    "type": "string",
                                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                  },
                                  "destinationCurrencySymbol": {
                                    "type": "string",
                                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "ETH destination details",
                                "anyOf": [
                                  {
                                    "required": [
                                      "address"
                                    ],
                                    "properties": {
                                      "address": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  },
                                  {
                                    "required": [
                                      "destinationWalletAddress"
                                    ],
                                    "properties": {
                                      "destinationWalletAddress": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  }
                                ],
                                "title": "ETH"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MATIC"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Memo for the wallet, when the chain uses one"
                                  },
                                  "txId": {
                                    "type": "string",
                                    "description": "Blockchain transaction ID"
                                  },
                                  "txUrlScan": {
                                    "type": "string",
                                    "description": "Blockchain explorer URL for the transaction"
                                  },
                                  "destinationWalletAddress": {
                                    "type": "string",
                                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                  },
                                  "destinationWalletMemo": {
                                    "type": "string",
                                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                  },
                                  "destinationNetwork": {
                                    "type": "string",
                                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                  },
                                  "destinationCurrencySymbol": {
                                    "type": "string",
                                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "MATIC destination details",
                                "anyOf": [
                                  {
                                    "required": [
                                      "address"
                                    ],
                                    "properties": {
                                      "address": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  },
                                  {
                                    "required": [
                                      "destinationWalletAddress"
                                    ],
                                    "properties": {
                                      "destinationWalletAddress": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  }
                                ],
                                "title": "MATIC"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "SOL"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Memo for the wallet, when the chain uses one"
                                  },
                                  "txId": {
                                    "type": "string",
                                    "description": "Blockchain transaction ID"
                                  },
                                  "txUrlScan": {
                                    "type": "string",
                                    "description": "Blockchain explorer URL for the transaction"
                                  },
                                  "destinationWalletAddress": {
                                    "type": "string",
                                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                  },
                                  "destinationWalletMemo": {
                                    "type": "string",
                                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                  },
                                  "destinationNetwork": {
                                    "type": "string",
                                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                  },
                                  "destinationCurrencySymbol": {
                                    "type": "string",
                                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "SOL destination details",
                                "anyOf": [
                                  {
                                    "required": [
                                      "address"
                                    ],
                                    "properties": {
                                      "address": {
                                        "pattern": "\\S"
                                      }
                                    }
                                  },
                                  {
                                    "required": [
                                      "destinationWalletAddress"
                                    ],
                                    "properties": {
                                      "destinationWalletAddress": {
                                        "pattern": "\\S"
                                      }
                                    }
                                  }
                                ],
                                "title": "SOL"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "TRON"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Memo for the wallet, when the chain uses one"
                                  },
                                  "txId": {
                                    "type": "string",
                                    "description": "Blockchain transaction ID"
                                  },
                                  "txUrlScan": {
                                    "type": "string",
                                    "description": "Blockchain explorer URL for the transaction"
                                  },
                                  "destinationWalletAddress": {
                                    "type": "string",
                                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                  },
                                  "destinationWalletMemo": {
                                    "type": "string",
                                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                  },
                                  "destinationNetwork": {
                                    "type": "string",
                                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                  },
                                  "destinationCurrencySymbol": {
                                    "type": "string",
                                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "TRON destination details",
                                "anyOf": [
                                  {
                                    "required": [
                                      "address"
                                    ],
                                    "properties": {
                                      "address": {
                                        "pattern": "\\S"
                                      }
                                    }
                                  },
                                  {
                                    "required": [
                                      "destinationWalletAddress"
                                    ],
                                    "properties": {
                                      "destinationWalletAddress": {
                                        "pattern": "\\S"
                                      }
                                    }
                                  }
                                ],
                                "title": "TRON"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "CELO"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Memo for the wallet, when the chain uses one"
                                  },
                                  "txId": {
                                    "type": "string",
                                    "description": "Blockchain transaction ID"
                                  },
                                  "txUrlScan": {
                                    "type": "string",
                                    "description": "Blockchain explorer URL for the transaction"
                                  },
                                  "destinationWalletAddress": {
                                    "type": "string",
                                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                  },
                                  "destinationWalletMemo": {
                                    "type": "string",
                                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                  },
                                  "destinationNetwork": {
                                    "type": "string",
                                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                  },
                                  "destinationCurrencySymbol": {
                                    "type": "string",
                                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "CELO destination details",
                                "anyOf": [
                                  {
                                    "required": [
                                      "address"
                                    ],
                                    "properties": {
                                      "address": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  },
                                  {
                                    "required": [
                                      "destinationWalletAddress"
                                    ],
                                    "properties": {
                                      "destinationWalletAddress": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  }
                                ],
                                "title": "CELO"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BTC"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Memo for the wallet, when the chain uses one"
                                  },
                                  "txId": {
                                    "type": "string",
                                    "description": "Blockchain transaction ID"
                                  },
                                  "txUrlScan": {
                                    "type": "string",
                                    "description": "Blockchain explorer URL for the transaction"
                                  },
                                  "destinationWalletAddress": {
                                    "type": "string",
                                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                  },
                                  "destinationWalletMemo": {
                                    "type": "string",
                                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                  },
                                  "destinationNetwork": {
                                    "type": "string",
                                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                  },
                                  "destinationCurrencySymbol": {
                                    "type": "string",
                                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "BTC destination details",
                                "anyOf": [
                                  {
                                    "required": [
                                      "address"
                                    ],
                                    "properties": {
                                      "address": {
                                        "pattern": "\\S"
                                      }
                                    }
                                  },
                                  {
                                    "required": [
                                      "destinationWalletAddress"
                                    ],
                                    "properties": {
                                      "destinationWalletAddress": {
                                        "pattern": "\\S"
                                      }
                                    }
                                  }
                                ],
                                "title": "BTC"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "SOLANA"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Memo for the wallet, when the chain uses one"
                                  },
                                  "txId": {
                                    "type": "string",
                                    "description": "Blockchain transaction ID"
                                  },
                                  "txUrlScan": {
                                    "type": "string",
                                    "description": "Blockchain explorer URL for the transaction"
                                  },
                                  "destinationWalletAddress": {
                                    "type": "string",
                                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                  },
                                  "destinationWalletMemo": {
                                    "type": "string",
                                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                  },
                                  "destinationNetwork": {
                                    "type": "string",
                                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                  },
                                  "destinationCurrencySymbol": {
                                    "type": "string",
                                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "SOLANA destination details",
                                "anyOf": [
                                  {
                                    "required": [
                                      "address"
                                    ],
                                    "properties": {
                                      "address": {
                                        "pattern": "\\S"
                                      }
                                    }
                                  },
                                  {
                                    "required": [
                                      "destinationWalletAddress"
                                    ],
                                    "properties": {
                                      "destinationWalletAddress": {
                                        "pattern": "\\S"
                                      }
                                    }
                                  }
                                ],
                                "title": "SOLANA"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "XRP"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Memo for the wallet, when the chain uses one"
                                  },
                                  "txId": {
                                    "type": "string",
                                    "description": "Blockchain transaction ID"
                                  },
                                  "txUrlScan": {
                                    "type": "string",
                                    "description": "Blockchain explorer URL for the transaction"
                                  },
                                  "destinationWalletAddress": {
                                    "type": "string",
                                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                  },
                                  "destinationWalletMemo": {
                                    "type": "string",
                                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                  },
                                  "destinationNetwork": {
                                    "type": "string",
                                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                  },
                                  "destinationCurrencySymbol": {
                                    "type": "string",
                                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "XRP destination details",
                                "anyOf": [
                                  {
                                    "required": [
                                      "address"
                                    ],
                                    "properties": {
                                      "address": {
                                        "pattern": "\\S"
                                      }
                                    }
                                  },
                                  {
                                    "required": [
                                      "destinationWalletAddress"
                                    ],
                                    "properties": {
                                      "destinationWalletAddress": {
                                        "pattern": "\\S"
                                      }
                                    }
                                  }
                                ],
                                "title": "XRP"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "CARDANO"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Memo for the wallet, when the chain uses one"
                                  },
                                  "txId": {
                                    "type": "string",
                                    "description": "Blockchain transaction ID"
                                  },
                                  "txUrlScan": {
                                    "type": "string",
                                    "description": "Blockchain explorer URL for the transaction"
                                  },
                                  "destinationWalletAddress": {
                                    "type": "string",
                                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                  },
                                  "destinationWalletMemo": {
                                    "type": "string",
                                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                  },
                                  "destinationNetwork": {
                                    "type": "string",
                                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                  },
                                  "destinationCurrencySymbol": {
                                    "type": "string",
                                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "CARDANO destination details",
                                "anyOf": [
                                  {
                                    "required": [
                                      "address"
                                    ],
                                    "properties": {
                                      "address": {
                                        "pattern": "\\S"
                                      }
                                    }
                                  },
                                  {
                                    "required": [
                                      "destinationWalletAddress"
                                    ],
                                    "properties": {
                                      "destinationWalletAddress": {
                                        "pattern": "\\S"
                                      }
                                    }
                                  }
                                ],
                                "title": "CARDANO"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BSC"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Memo for the wallet, when the chain uses one"
                                  },
                                  "txId": {
                                    "type": "string",
                                    "description": "Blockchain transaction ID"
                                  },
                                  "txUrlScan": {
                                    "type": "string",
                                    "description": "Blockchain explorer URL for the transaction"
                                  },
                                  "destinationWalletAddress": {
                                    "type": "string",
                                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                  },
                                  "destinationWalletMemo": {
                                    "type": "string",
                                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                  },
                                  "destinationNetwork": {
                                    "type": "string",
                                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                  },
                                  "destinationCurrencySymbol": {
                                    "type": "string",
                                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "BSC destination details",
                                "anyOf": [
                                  {
                                    "required": [
                                      "address"
                                    ],
                                    "properties": {
                                      "address": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  },
                                  {
                                    "required": [
                                      "destinationWalletAddress"
                                    ],
                                    "properties": {
                                      "destinationWalletAddress": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  }
                                ],
                                "title": "BSC"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "ARBITRUM"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Memo for the wallet, when the chain uses one"
                                  },
                                  "txId": {
                                    "type": "string",
                                    "description": "Blockchain transaction ID"
                                  },
                                  "txUrlScan": {
                                    "type": "string",
                                    "description": "Blockchain explorer URL for the transaction"
                                  },
                                  "destinationWalletAddress": {
                                    "type": "string",
                                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                  },
                                  "destinationWalletMemo": {
                                    "type": "string",
                                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                  },
                                  "destinationNetwork": {
                                    "type": "string",
                                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                  },
                                  "destinationCurrencySymbol": {
                                    "type": "string",
                                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "ARBITRUM destination details",
                                "anyOf": [
                                  {
                                    "required": [
                                      "address"
                                    ],
                                    "properties": {
                                      "address": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  },
                                  {
                                    "required": [
                                      "destinationWalletAddress"
                                    ],
                                    "properties": {
                                      "destinationWalletAddress": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  }
                                ],
                                "title": "ARBITRUM"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "OPTIMISM"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Memo for the wallet, when the chain uses one"
                                  },
                                  "txId": {
                                    "type": "string",
                                    "description": "Blockchain transaction ID"
                                  },
                                  "txUrlScan": {
                                    "type": "string",
                                    "description": "Blockchain explorer URL for the transaction"
                                  },
                                  "destinationWalletAddress": {
                                    "type": "string",
                                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                  },
                                  "destinationWalletMemo": {
                                    "type": "string",
                                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                  },
                                  "destinationNetwork": {
                                    "type": "string",
                                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                  },
                                  "destinationCurrencySymbol": {
                                    "type": "string",
                                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "OPTIMISM destination details",
                                "anyOf": [
                                  {
                                    "required": [
                                      "address"
                                    ],
                                    "properties": {
                                      "address": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  },
                                  {
                                    "required": [
                                      "destinationWalletAddress"
                                    ],
                                    "properties": {
                                      "destinationWalletAddress": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  }
                                ],
                                "title": "OPTIMISM"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "AVALANCHE"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Memo for the wallet, when the chain uses one"
                                  },
                                  "txId": {
                                    "type": "string",
                                    "description": "Blockchain transaction ID"
                                  },
                                  "txUrlScan": {
                                    "type": "string",
                                    "description": "Blockchain explorer URL for the transaction"
                                  },
                                  "destinationWalletAddress": {
                                    "type": "string",
                                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                  },
                                  "destinationWalletMemo": {
                                    "type": "string",
                                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                  },
                                  "destinationNetwork": {
                                    "type": "string",
                                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                  },
                                  "destinationCurrencySymbol": {
                                    "type": "string",
                                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "AVALANCHE destination details",
                                "anyOf": [
                                  {
                                    "required": [
                                      "address"
                                    ],
                                    "properties": {
                                      "address": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  },
                                  {
                                    "required": [
                                      "destinationWalletAddress"
                                    ],
                                    "properties": {
                                      "destinationWalletAddress": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  }
                                ],
                                "title": "AVALANCHE"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BASE"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Memo for the wallet, when the chain uses one"
                                  },
                                  "txId": {
                                    "type": "string",
                                    "description": "Blockchain transaction ID"
                                  },
                                  "txUrlScan": {
                                    "type": "string",
                                    "description": "Blockchain explorer URL for the transaction"
                                  },
                                  "destinationWalletAddress": {
                                    "type": "string",
                                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                  },
                                  "destinationWalletMemo": {
                                    "type": "string",
                                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                  },
                                  "destinationNetwork": {
                                    "type": "string",
                                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                  },
                                  "destinationCurrencySymbol": {
                                    "type": "string",
                                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "BASE destination details",
                                "anyOf": [
                                  {
                                    "required": [
                                      "address"
                                    ],
                                    "properties": {
                                      "address": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  },
                                  {
                                    "required": [
                                      "destinationWalletAddress"
                                    ],
                                    "properties": {
                                      "destinationWalletAddress": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  }
                                ],
                                "title": "BASE"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_COL"
                                    ]
                                  },
                                  "destinationBankCode": {
                                    "type": "string",
                                    "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                                  },
                                  "destinationBankAccountType": {
                                    "type": "string",
                                    "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "description": "Recipient ID document number. Required when creating or updating a destination."
                                  },
                                  "destinationDocumentType": {
                                    "type": "string",
                                    "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                                "title": "Bank Deposit COL"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "brebKey": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "Bre-B key (llave) that identifies the recipient account"
                                  },
                                  "email": {
                                    "type": "string",
                                    "description": "Recipient email (optional contact for the Bre-B rail)"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Recipient phone number (optional contact for the Bre-B rail)"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BRE_B_COP"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "brebKey",
                                  "type"
                                ],
                                "description": "Colombian Bre-B payout details",
                                "title": "Bre-B COP"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankCode": {
                                    "type": "string",
                                    "pattern": "^\\d{4}$",
                                    "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                                  },
                                  "destinationBankAccountNumber": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "Recipient bank account number"
                                  },
                                  "destinationBankAccountType": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                                  },
                                  "destinationDocumentType": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "Recipient ID document number"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "ACH_COP"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankCode",
                                  "destinationBankAccountNumber",
                                  "destinationBankAccountType",
                                  "destinationDocumentType",
                                  "destinationTaxId",
                                  "type"
                                ],
                                "description": "Colombian ACH payout details",
                                "title": "ACH COP"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (unused for TWD — no network discovery)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "minLength": 2,
                                    "description": "Bank name (required — TWD payouts run over SWIFT)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_TW"
                                    ]
                                  },
                                  "destinationBankBranch": {
                                    "type": "string",
                                    "minLength": 2,
                                    "description": "Bank branch (required — TWD payouts run over SWIFT)"
                                  },
                                  "bic": {
                                    "type": "string",
                                    "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                                    "description": "SWIFT BIC code (required for TWD payouts)"
                                  },
                                  "destinationBankAccountType": {
                                    "type": "string",
                                    "description": "Type of bank account (legacy, optional)"
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "description": "Tax ID of the recipient (legacy, optional)"
                                  },
                                  "destinationDocumentType": {
                                    "type": "string",
                                    "description": "Document type of the recipient (legacy, optional)"
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "destinationBankName",
                                  "type",
                                  "destinationBankBranch",
                                  "bic"
                                ],
                                "description": "Taiwan bank deposit details (SWIFT payout)",
                                "title": "Bank Deposit TW"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankCode": {
                                    "type": "string",
                                    "description": "Bank code"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationBankBranch": {
                                    "type": "string",
                                    "description": "Bank branch"
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "description": "Tax ID of the recipient"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_BR"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankCode",
                                  "destinationBankAccount",
                                  "destinationBankBranch",
                                  "destinationTaxId",
                                  "type"
                                ],
                                "description": "Brazilian bank deposit details",
                                "title": "Bank Deposit BR"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPixCode": {
                                    "type": "string",
                                    "description": "PIX code"
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "description": "Tax ID of the recipient"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "PIX_BR"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPixCode",
                                  "destinationTaxId",
                                  "type"
                                ],
                                "description": "Brazilian PIX details",
                                "title": "PIX BR"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccountNumber": {
                                    "type": "string",
                                    "description": "Bank account number"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Name of the bank"
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                                    "description": "Tax ID of the recipient"
                                  },
                                  "destinationBankAccountType": {
                                    "type": "string",
                                    "description": "Type of bank account"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_VEN"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccountNumber",
                                  "destinationBankName",
                                  "destinationTaxId",
                                  "destinationBankAccountType",
                                  "type"
                                ],
                                "description": "Venezuelan bank deposit details",
                                "title": "Bank Deposit VEN"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankCode": {
                                    "type": "string",
                                    "description": "Bank code"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                                    "description": "Tax ID of the recipient"
                                  },
                                  "destinationBankAccountType": {
                                    "type": "string",
                                    "description": "Type of bank account"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "PHONE_DEPOSIT_VEN"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankCode",
                                  "destinationPhoneNumber",
                                  "destinationTaxId",
                                  "destinationBankAccountType",
                                  "type"
                                ],
                                "description": "Venezuelan phone deposit details",
                                "title": "Phone Deposit VEN"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationIFSC": {
                                    "type": "string",
                                    "description": "IFSC code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_IN"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                "title": "Bank Deposit IN",
                                "deprecated": true
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationIFSC": {
                                    "type": "string",
                                    "description": "IFSC code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "IMPS"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                "title": "IMPS",
                                "deprecated": true
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationIFSC": {
                                    "type": "string",
                                    "description": "IFSC code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "THAI_QR"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                "title": "Thai QR",
                                "deprecated": true
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationIFSC": {
                                    "type": "string",
                                    "description": "IFSC code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "VIET_QR"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                "title": "Viet QR",
                                "deprecated": true
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationIFSC": {
                                    "type": "string",
                                    "description": "IFSC code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "GCASH"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                "title": "GCash",
                                "deprecated": true
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "description": "Tax ID"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_PAYMENT_IN"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPhoneNumber",
                                  "destinationTaxId",
                                  "type"
                                ],
                                "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                "title": "Mobile Payment IN",
                                "deprecated": true
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationBankCode": {
                                    "type": "string",
                                    "description": "Bank code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_VN"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "destinationBankCode",
                                  "type"
                                ],
                                "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                "title": "Bank Deposit VN",
                                "deprecated": true
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "bic": {
                                    "type": "string",
                                    "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "destinationAddress": {
                                    "type": "string",
                                    "description": "Address line 1 of the recipient"
                                  },
                                  "destinationCity": {
                                    "type": "string",
                                    "description": "Recipient city (defaults to Hong Kong)"
                                  },
                                  "accountHolderName": {
                                    "type": "string",
                                    "description": "Bank account holder name if different from payee"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_HK"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "bic",
                                  "destinationBankName",
                                  "destinationAddress",
                                  "type"
                                ],
                                "description": "Hong Kong bank deposit details (HKD bank corridor)",
                                "title": "Bank Deposit HK"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationBankCode": {
                                    "type": "string",
                                    "pattern": "^\\d+$",
                                    "description": "CNAPS / bank institution code (numeric, variable length)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "destinationAddress": {
                                    "type": "string",
                                    "description": "Address line 1 of the recipient"
                                  },
                                  "destinationCity": {
                                    "type": "string",
                                    "description": "Recipient city"
                                  },
                                  "destinationState": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                                  },
                                  "destinationPostcode": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                                  },
                                  "destinationPhone": {
                                    "type": "string",
                                    "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                                  },
                                  "accountHolderName": {
                                    "type": "string",
                                    "description": "Bank account holder name if different from payee"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_CN"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "destinationBankCode",
                                  "destinationBankName",
                                  "destinationAddress",
                                  "destinationCity",
                                  "destinationState",
                                  "destinationPostcode",
                                  "type"
                                ],
                                "description": "China mainland bank deposit details (CNY bank corridor)",
                                "title": "Bank Deposit CN"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_AR"
                                    ]
                                  },
                                  "destinationCBU": {
                                    "type": "string",
                                    "description": "CBU — 22-digit bank account key (legacy, optional)"
                                  },
                                  "destinationCVU": {
                                    "type": "string",
                                    "description": "CVU — 22-digit virtual account key (legacy, optional)"
                                  },
                                  "destinationAlias": {
                                    "type": "string",
                                    "description": "Account alias (legacy, optional)"
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                                  },
                                  "destinationDocumentType": {
                                    "type": "string",
                                    "description": "Document type of the recipient (legacy, optional)"
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Argentinian bank deposit details",
                                "title": "Bank Deposit AR"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationBankName is given)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "Recipient bank name (required for Chilean bank payouts)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_CL"
                                    ]
                                  },
                                  "destinationBankAccountType": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                                  },
                                  "destinationDocumentType": {
                                    "type": "string",
                                    "description": "Document type of the recipient (legacy, optional)"
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "destinationBankName",
                                  "type",
                                  "destinationBankAccountType",
                                  "destinationTaxId"
                                ],
                                "description": "Chilean bank deposit details",
                                "title": "Bank Deposit CL"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "minLength": 2,
                                    "maxLength": 30,
                                    "description": "Recipient name (required, 2–30 characters)"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 11,
                                    "description": "Bank account number (max 11 digits for Bolivian accounts)"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (unused for BOB — no network discovery)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "maxLength": 20,
                                    "description": "Bank name (optional, max 20 characters)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_BO"
                                    ]
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 15,
                                    "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type",
                                  "destinationTaxId"
                                ],
                                "description": "Bolivian bank deposit details",
                                "title": "Bank Deposit BO"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_PE"
                                    ]
                                  },
                                  "destinationCCI": {
                                    "type": "string",
                                    "description": "CCI — 20-digit interbank account code (legacy, optional)"
                                  },
                                  "destinationBankAccountType": {
                                    "type": "string",
                                    "description": "Account type (corriente/ahorro) (legacy, optional)"
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                                  },
                                  "destinationDocumentType": {
                                    "type": "string",
                                    "description": "Document type of the recipient (legacy, optional)"
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "destinationNetworkId",
                                  "type"
                                ],
                                "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                "title": "Bank Deposit PE",
                                "deprecated": true
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankCode": {
                                    "type": "string",
                                    "pattern": "^\\d{3}$",
                                    "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                                  },
                                  "destinationBankAccountNumber": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 20,
                                    "description": "Recipient bank account number (max 20)"
                                  },
                                  "destinationBankAccountType": {
                                    "type": "string",
                                    "enum": [
                                      "CORRIENTE",
                                      "AHORROS",
                                      "PHONE"
                                    ],
                                    "description": "Bank account type"
                                  },
                                  "destinationCCI": {
                                    "type": "string",
                                    "pattern": "^\\d{1,20}$",
                                    "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                                  },
                                  "destinationDocumentType": {
                                    "type": "string",
                                    "enum": [
                                      "CC",
                                      "CE",
                                      "RUC",
                                      "PAS",
                                      "PAR",
                                      "LMI",
                                      "OTHER"
                                    ],
                                    "description": "Recipient identification type"
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 50,
                                    "description": "Recipient identification number (max 50)"
                                  },
                                  "email": {
                                    "type": "string",
                                    "pattern": "^.+@.+\\..+$",
                                    "description": "Recipient email (required for PEN payouts)"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "pattern": "^\\d{1,9}$",
                                    "description": "Recipient phone number (required, max 9 digits)"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_PEN"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankCode",
                                  "destinationBankAccountNumber",
                                  "destinationBankAccountType",
                                  "destinationCCI",
                                  "destinationDocumentType",
                                  "destinationTaxId",
                                  "email",
                                  "destinationPhoneNumber",
                                  "type"
                                ],
                                "description": "Peruvian bank deposit details (bank-code payout corridor).",
                                "title": "Bank Deposit PEN"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationBankName is given)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_NG"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Nigeria bank deposit details",
                                "title": "Bank Deposit NG"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationBankName is given)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_KE"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Kenya bank deposit details",
                                "title": "Bank Deposit KE"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationBankName is given)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_GH"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                "title": "Bank Deposit GH",
                                "deprecated": true
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationBankName is given)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_ZA"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "South Africa bank deposit details",
                                "title": "Bank Deposit ZA"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationBankName is given)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_TZ"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Tanzania bank deposit details",
                                "title": "Bank Deposit TZ"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationBankName is given)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_UG"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Uganda bank deposit details",
                                "title": "Bank Deposit UG"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationBankName is given)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_RW"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Rwanda bank deposit details",
                                "title": "Bank Deposit RW"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationBankName is given)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_MW"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Malawi bank deposit details",
                                "title": "Bank Deposit MW"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationBankName is given)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_ZM"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Zambia bank deposit details",
                                "title": "Bank Deposit ZM"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationBankName is given)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_BW"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Botswana bank deposit details",
                                "title": "Bank Deposit BW"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationBankName is given)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_CD"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                "title": "Bank Deposit CD",
                                "deprecated": true
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationBankName is given)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_XOF"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "West African CFA bank deposit details",
                                "title": "Bank Deposit XOF"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationBankName is given)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_XAF"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Central African CFA bank deposit details",
                                "title": "Bank Deposit XAF"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationNetworkName is given)"
                                  },
                                  "destinationNetworkName": {
                                    "type": "string",
                                    "description": "Mobile money network name (resolves the network when id omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_NG"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPhoneNumber",
                                  "type"
                                ],
                                "description": "Nigeria mobile money details",
                                "title": "Mobile Money NG"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationNetworkName is given)"
                                  },
                                  "destinationNetworkName": {
                                    "type": "string",
                                    "description": "Mobile money network name (resolves the network when id omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_KE"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPhoneNumber",
                                  "type"
                                ],
                                "description": "Kenya mobile money details",
                                "title": "Mobile Money KE"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationNetworkName is given)"
                                  },
                                  "destinationNetworkName": {
                                    "type": "string",
                                    "description": "Mobile money network name (resolves the network when id omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_GH"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPhoneNumber",
                                  "type"
                                ],
                                "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                "title": "Mobile Money GH",
                                "deprecated": true
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationNetworkName is given)"
                                  },
                                  "destinationNetworkName": {
                                    "type": "string",
                                    "description": "Mobile money network name (resolves the network when id omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_ZA"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPhoneNumber",
                                  "type"
                                ],
                                "description": "South Africa mobile money details",
                                "title": "Mobile Money ZA"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationNetworkName is given)"
                                  },
                                  "destinationNetworkName": {
                                    "type": "string",
                                    "description": "Mobile money network name (resolves the network when id omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_TZ"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPhoneNumber",
                                  "type"
                                ],
                                "description": "Tanzania mobile money details",
                                "title": "Mobile Money TZ"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationNetworkName is given)"
                                  },
                                  "destinationNetworkName": {
                                    "type": "string",
                                    "description": "Mobile money network name (resolves the network when id omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_UG"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPhoneNumber",
                                  "type"
                                ],
                                "description": "Uganda mobile money details",
                                "title": "Mobile Money UG"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationNetworkName is given)"
                                  },
                                  "destinationNetworkName": {
                                    "type": "string",
                                    "description": "Mobile money network name (resolves the network when id omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_RW"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPhoneNumber",
                                  "type"
                                ],
                                "description": "Rwanda mobile money details",
                                "title": "Mobile Money RW"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationNetworkName is given)"
                                  },
                                  "destinationNetworkName": {
                                    "type": "string",
                                    "description": "Mobile money network name (resolves the network when id omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_MW"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPhoneNumber",
                                  "type"
                                ],
                                "description": "Malawi mobile money details",
                                "title": "Mobile Money MW"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationNetworkName is given)"
                                  },
                                  "destinationNetworkName": {
                                    "type": "string",
                                    "description": "Mobile money network name (resolves the network when id omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_ZM"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPhoneNumber",
                                  "type"
                                ],
                                "description": "Zambia mobile money details",
                                "title": "Mobile Money ZM"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationNetworkName is given)"
                                  },
                                  "destinationNetworkName": {
                                    "type": "string",
                                    "description": "Mobile money network name (resolves the network when id omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_BW"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPhoneNumber",
                                  "type"
                                ],
                                "description": "Botswana mobile money details",
                                "title": "Mobile Money BW"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationNetworkName is given)"
                                  },
                                  "destinationNetworkName": {
                                    "type": "string",
                                    "description": "Mobile money network name (resolves the network when id omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_CD"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPhoneNumber",
                                  "type"
                                ],
                                "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                "title": "Mobile Money CD",
                                "deprecated": true
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationNetworkName is given)"
                                  },
                                  "destinationNetworkName": {
                                    "type": "string",
                                    "description": "Mobile money network name (resolves the network when id omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_XOF"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPhoneNumber",
                                  "type"
                                ],
                                "description": "West African CFA mobile money details",
                                "title": "Mobile Money XOF"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationNetworkName is given)"
                                  },
                                  "destinationNetworkName": {
                                    "type": "string",
                                    "description": "Mobile money network name (resolves the network when id omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_XAF"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPhoneNumber",
                                  "type"
                                ],
                                "description": "Central African CFA mobile money details",
                                "title": "Mobile Money XAF"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankCode": {
                                    "type": "string",
                                    "description": "Bank code"
                                  },
                                  "destinationBankAccountNumber": {
                                    "type": "string",
                                    "description": "Bank account number (18-digit CLABE)"
                                  },
                                  "numericReference": {
                                    "type": "string",
                                    "description": "Numeric reference"
                                  },
                                  "notesReference": {
                                    "type": "string",
                                    "description": "Notes reference"
                                  },
                                  "destinationClabe": {
                                    "type": "string",
                                    "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_MX"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccountNumber",
                                  "type"
                                ],
                                "description": "Mexican bank deposit details",
                                "title": "Bank Deposit MX"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPseNumber": {
                                    "type": "string",
                                    "description": "PSE number"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "PSE"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPseNumber",
                                  "type"
                                ],
                                "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                "title": "PSE",
                                "deprecated": true
                              }
                            ],
                            "description": "The details required for the end user destination transfer method."
                          },
                          "status": {
                            "anyOf": [
                              {
                                "type": "string",
                                "enum": [
                                  "Pending",
                                  "Processing",
                                  "Success",
                                  "Failed",
                                  "Canceled",
                                  "Reviewing"
                                ],
                                "description": "Common status values that are shared across all operation types",
                                "examples": [
                                  "Pending",
                                  "Processing",
                                  "Success",
                                  "Failed",
                                  "Canceled",
                                  "Reviewing"
                                ]
                              },
                              {
                                "type": "string",
                                "enum": [
                                  "PendingCancel",
                                  "PendingWithdrawal",
                                  "PendingVerification",
                                  "Pending2FA",
                                  "Compliance",
                                  "Accepted",
                                  "Approved",
                                  "Rejected",
                                  "Review"
                                ]
                              }
                            ],
                            "description": "Status of the withdrawal",
                            "examples": [
                              "Pending",
                              "Pending2FA",
                              "Compliance",
                              "Accepted",
                              "Approved",
                              "Success",
                              "Failed",
                              "Review",
                              "Rejected"
                            ]
                          },
                          "withdrawalInfo": {
                            "oneOf": [
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BALANCE"
                                    ]
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "Balance transfer details",
                                "title": "Balance"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "iban": {
                                    "type": "string",
                                    "description": "IBAN number"
                                  },
                                  "bic": {
                                    "type": "string",
                                    "description": "BIC number (optional)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "Country code"
                                  },
                                  "accountType": {
                                    "type": "string",
                                    "enum": [
                                      "PERSONAL",
                                      "BUSINESS"
                                    ],
                                    "default": "PERSONAL",
                                    "description": "Account type (optional)"
                                  },
                                  "city": {
                                    "type": "string",
                                    "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                                  },
                                  "postalCode": {
                                    "type": "string",
                                    "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "SEPA"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "iban",
                                  "country",
                                  "type"
                                ],
                                "description": "SEPA transfer details",
                                "title": "SEPA"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "UK bank account number"
                                  },
                                  "sortCode": {
                                    "type": "string",
                                    "description": "UK sort code"
                                  },
                                  "country": {
                                    "type": "string",
                                    "enum": [
                                      "GB"
                                    ],
                                    "default": "GB",
                                    "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                                  },
                                  "accountType": {
                                    "type": "string",
                                    "enum": [
                                      "PERSONAL",
                                      "BUSINESS"
                                    ],
                                    "default": "PERSONAL",
                                    "description": "Account type (optional)"
                                  },
                                  "city": {
                                    "type": "string",
                                    "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                                  },
                                  "postalCode": {
                                    "type": "string",
                                    "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "GBP_BANK_TRANSFER"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "accountNumber",
                                  "sortCode",
                                  "type"
                                ],
                                "description": "GBP domestic bank transfer details",
                                "title": "BankDepositGB"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "description": "US bank account number"
                                  },
                                  "routingNumber": {
                                    "type": "string",
                                    "description": "US ABA routing number"
                                  },
                                  "country": {
                                    "type": "string",
                                    "enum": [
                                      "US"
                                    ],
                                    "default": "US",
                                    "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                                  },
                                  "accountType": {
                                    "type": "string",
                                    "enum": [
                                      "PERSONAL",
                                      "BUSINESS"
                                    ],
                                    "default": "PERSONAL",
                                    "description": "Account type (optional)"
                                  },
                                  "bankAccountType": {
                                    "type": "string",
                                    "enum": [
                                      "CHECKING",
                                      "SAVINGS"
                                    ],
                                    "default": "CHECKING",
                                    "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                                  },
                                  "city": {
                                    "type": "string",
                                    "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                                  },
                                  "postalCode": {
                                    "type": "string",
                                    "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                                  },
                                  "state": {
                                    "type": "string",
                                    "pattern": "^[A-Z]{2}$",
                                    "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "ACH_US"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "accountNumber",
                                  "routingNumber",
                                  "state",
                                  "type"
                                ],
                                "description": "USD ACH transfer details",
                                "title": "AchUS"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "linkedBankAccount"
                                    ]
                                  },
                                  "accountLinkId": {
                                    "type": "string",
                                    "pattern": "^alnk_[0-9a-f]{24}$",
                                    "description": "Identifier of one of the account holder own linked bank accounts",
                                    "examples": [
                                      "alnk_0123456789abcdef01234567"
                                    ]
                                  }
                                },
                                "required": [
                                  "type",
                                  "accountLinkId"
                                ],
                                "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                                "title": "LinkedBankAccount",
                                "deprecated": true
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "ETH"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Memo for the wallet, when the chain uses one"
                                  },
                                  "txId": {
                                    "type": "string",
                                    "description": "Blockchain transaction ID"
                                  },
                                  "txUrlScan": {
                                    "type": "string",
                                    "description": "Blockchain explorer URL for the transaction"
                                  },
                                  "destinationWalletAddress": {
                                    "type": "string",
                                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                  },
                                  "destinationWalletMemo": {
                                    "type": "string",
                                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                  },
                                  "destinationNetwork": {
                                    "type": "string",
                                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                  },
                                  "destinationCurrencySymbol": {
                                    "type": "string",
                                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "ETH destination details",
                                "anyOf": [
                                  {
                                    "required": [
                                      "address"
                                    ],
                                    "properties": {
                                      "address": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  },
                                  {
                                    "required": [
                                      "destinationWalletAddress"
                                    ],
                                    "properties": {
                                      "destinationWalletAddress": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  }
                                ],
                                "title": "ETH"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MATIC"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Memo for the wallet, when the chain uses one"
                                  },
                                  "txId": {
                                    "type": "string",
                                    "description": "Blockchain transaction ID"
                                  },
                                  "txUrlScan": {
                                    "type": "string",
                                    "description": "Blockchain explorer URL for the transaction"
                                  },
                                  "destinationWalletAddress": {
                                    "type": "string",
                                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                  },
                                  "destinationWalletMemo": {
                                    "type": "string",
                                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                  },
                                  "destinationNetwork": {
                                    "type": "string",
                                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                  },
                                  "destinationCurrencySymbol": {
                                    "type": "string",
                                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "MATIC destination details",
                                "anyOf": [
                                  {
                                    "required": [
                                      "address"
                                    ],
                                    "properties": {
                                      "address": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  },
                                  {
                                    "required": [
                                      "destinationWalletAddress"
                                    ],
                                    "properties": {
                                      "destinationWalletAddress": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  }
                                ],
                                "title": "MATIC"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "SOL"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Memo for the wallet, when the chain uses one"
                                  },
                                  "txId": {
                                    "type": "string",
                                    "description": "Blockchain transaction ID"
                                  },
                                  "txUrlScan": {
                                    "type": "string",
                                    "description": "Blockchain explorer URL for the transaction"
                                  },
                                  "destinationWalletAddress": {
                                    "type": "string",
                                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                  },
                                  "destinationWalletMemo": {
                                    "type": "string",
                                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                  },
                                  "destinationNetwork": {
                                    "type": "string",
                                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                  },
                                  "destinationCurrencySymbol": {
                                    "type": "string",
                                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "SOL destination details",
                                "anyOf": [
                                  {
                                    "required": [
                                      "address"
                                    ],
                                    "properties": {
                                      "address": {
                                        "pattern": "\\S"
                                      }
                                    }
                                  },
                                  {
                                    "required": [
                                      "destinationWalletAddress"
                                    ],
                                    "properties": {
                                      "destinationWalletAddress": {
                                        "pattern": "\\S"
                                      }
                                    }
                                  }
                                ],
                                "title": "SOL"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "TRON"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Memo for the wallet, when the chain uses one"
                                  },
                                  "txId": {
                                    "type": "string",
                                    "description": "Blockchain transaction ID"
                                  },
                                  "txUrlScan": {
                                    "type": "string",
                                    "description": "Blockchain explorer URL for the transaction"
                                  },
                                  "destinationWalletAddress": {
                                    "type": "string",
                                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                  },
                                  "destinationWalletMemo": {
                                    "type": "string",
                                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                  },
                                  "destinationNetwork": {
                                    "type": "string",
                                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                  },
                                  "destinationCurrencySymbol": {
                                    "type": "string",
                                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "TRON destination details",
                                "anyOf": [
                                  {
                                    "required": [
                                      "address"
                                    ],
                                    "properties": {
                                      "address": {
                                        "pattern": "\\S"
                                      }
                                    }
                                  },
                                  {
                                    "required": [
                                      "destinationWalletAddress"
                                    ],
                                    "properties": {
                                      "destinationWalletAddress": {
                                        "pattern": "\\S"
                                      }
                                    }
                                  }
                                ],
                                "title": "TRON"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "CELO"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Memo for the wallet, when the chain uses one"
                                  },
                                  "txId": {
                                    "type": "string",
                                    "description": "Blockchain transaction ID"
                                  },
                                  "txUrlScan": {
                                    "type": "string",
                                    "description": "Blockchain explorer URL for the transaction"
                                  },
                                  "destinationWalletAddress": {
                                    "type": "string",
                                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                  },
                                  "destinationWalletMemo": {
                                    "type": "string",
                                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                  },
                                  "destinationNetwork": {
                                    "type": "string",
                                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                  },
                                  "destinationCurrencySymbol": {
                                    "type": "string",
                                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "CELO destination details",
                                "anyOf": [
                                  {
                                    "required": [
                                      "address"
                                    ],
                                    "properties": {
                                      "address": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  },
                                  {
                                    "required": [
                                      "destinationWalletAddress"
                                    ],
                                    "properties": {
                                      "destinationWalletAddress": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  }
                                ],
                                "title": "CELO"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BTC"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Memo for the wallet, when the chain uses one"
                                  },
                                  "txId": {
                                    "type": "string",
                                    "description": "Blockchain transaction ID"
                                  },
                                  "txUrlScan": {
                                    "type": "string",
                                    "description": "Blockchain explorer URL for the transaction"
                                  },
                                  "destinationWalletAddress": {
                                    "type": "string",
                                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                  },
                                  "destinationWalletMemo": {
                                    "type": "string",
                                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                  },
                                  "destinationNetwork": {
                                    "type": "string",
                                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                  },
                                  "destinationCurrencySymbol": {
                                    "type": "string",
                                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "BTC destination details",
                                "anyOf": [
                                  {
                                    "required": [
                                      "address"
                                    ],
                                    "properties": {
                                      "address": {
                                        "pattern": "\\S"
                                      }
                                    }
                                  },
                                  {
                                    "required": [
                                      "destinationWalletAddress"
                                    ],
                                    "properties": {
                                      "destinationWalletAddress": {
                                        "pattern": "\\S"
                                      }
                                    }
                                  }
                                ],
                                "title": "BTC"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "SOLANA"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Memo for the wallet, when the chain uses one"
                                  },
                                  "txId": {
                                    "type": "string",
                                    "description": "Blockchain transaction ID"
                                  },
                                  "txUrlScan": {
                                    "type": "string",
                                    "description": "Blockchain explorer URL for the transaction"
                                  },
                                  "destinationWalletAddress": {
                                    "type": "string",
                                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                  },
                                  "destinationWalletMemo": {
                                    "type": "string",
                                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                  },
                                  "destinationNetwork": {
                                    "type": "string",
                                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                  },
                                  "destinationCurrencySymbol": {
                                    "type": "string",
                                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "SOLANA destination details",
                                "anyOf": [
                                  {
                                    "required": [
                                      "address"
                                    ],
                                    "properties": {
                                      "address": {
                                        "pattern": "\\S"
                                      }
                                    }
                                  },
                                  {
                                    "required": [
                                      "destinationWalletAddress"
                                    ],
                                    "properties": {
                                      "destinationWalletAddress": {
                                        "pattern": "\\S"
                                      }
                                    }
                                  }
                                ],
                                "title": "SOLANA"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "XRP"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Memo for the wallet, when the chain uses one"
                                  },
                                  "txId": {
                                    "type": "string",
                                    "description": "Blockchain transaction ID"
                                  },
                                  "txUrlScan": {
                                    "type": "string",
                                    "description": "Blockchain explorer URL for the transaction"
                                  },
                                  "destinationWalletAddress": {
                                    "type": "string",
                                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                  },
                                  "destinationWalletMemo": {
                                    "type": "string",
                                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                  },
                                  "destinationNetwork": {
                                    "type": "string",
                                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                  },
                                  "destinationCurrencySymbol": {
                                    "type": "string",
                                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "XRP destination details",
                                "anyOf": [
                                  {
                                    "required": [
                                      "address"
                                    ],
                                    "properties": {
                                      "address": {
                                        "pattern": "\\S"
                                      }
                                    }
                                  },
                                  {
                                    "required": [
                                      "destinationWalletAddress"
                                    ],
                                    "properties": {
                                      "destinationWalletAddress": {
                                        "pattern": "\\S"
                                      }
                                    }
                                  }
                                ],
                                "title": "XRP"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "CARDANO"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Memo for the wallet, when the chain uses one"
                                  },
                                  "txId": {
                                    "type": "string",
                                    "description": "Blockchain transaction ID"
                                  },
                                  "txUrlScan": {
                                    "type": "string",
                                    "description": "Blockchain explorer URL for the transaction"
                                  },
                                  "destinationWalletAddress": {
                                    "type": "string",
                                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                  },
                                  "destinationWalletMemo": {
                                    "type": "string",
                                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                  },
                                  "destinationNetwork": {
                                    "type": "string",
                                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                  },
                                  "destinationCurrencySymbol": {
                                    "type": "string",
                                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "CARDANO destination details",
                                "anyOf": [
                                  {
                                    "required": [
                                      "address"
                                    ],
                                    "properties": {
                                      "address": {
                                        "pattern": "\\S"
                                      }
                                    }
                                  },
                                  {
                                    "required": [
                                      "destinationWalletAddress"
                                    ],
                                    "properties": {
                                      "destinationWalletAddress": {
                                        "pattern": "\\S"
                                      }
                                    }
                                  }
                                ],
                                "title": "CARDANO"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BSC"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Memo for the wallet, when the chain uses one"
                                  },
                                  "txId": {
                                    "type": "string",
                                    "description": "Blockchain transaction ID"
                                  },
                                  "txUrlScan": {
                                    "type": "string",
                                    "description": "Blockchain explorer URL for the transaction"
                                  },
                                  "destinationWalletAddress": {
                                    "type": "string",
                                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                  },
                                  "destinationWalletMemo": {
                                    "type": "string",
                                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                  },
                                  "destinationNetwork": {
                                    "type": "string",
                                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                  },
                                  "destinationCurrencySymbol": {
                                    "type": "string",
                                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "BSC destination details",
                                "anyOf": [
                                  {
                                    "required": [
                                      "address"
                                    ],
                                    "properties": {
                                      "address": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  },
                                  {
                                    "required": [
                                      "destinationWalletAddress"
                                    ],
                                    "properties": {
                                      "destinationWalletAddress": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  }
                                ],
                                "title": "BSC"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "ARBITRUM"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Memo for the wallet, when the chain uses one"
                                  },
                                  "txId": {
                                    "type": "string",
                                    "description": "Blockchain transaction ID"
                                  },
                                  "txUrlScan": {
                                    "type": "string",
                                    "description": "Blockchain explorer URL for the transaction"
                                  },
                                  "destinationWalletAddress": {
                                    "type": "string",
                                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                  },
                                  "destinationWalletMemo": {
                                    "type": "string",
                                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                  },
                                  "destinationNetwork": {
                                    "type": "string",
                                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                  },
                                  "destinationCurrencySymbol": {
                                    "type": "string",
                                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "ARBITRUM destination details",
                                "anyOf": [
                                  {
                                    "required": [
                                      "address"
                                    ],
                                    "properties": {
                                      "address": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  },
                                  {
                                    "required": [
                                      "destinationWalletAddress"
                                    ],
                                    "properties": {
                                      "destinationWalletAddress": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  }
                                ],
                                "title": "ARBITRUM"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "OPTIMISM"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Memo for the wallet, when the chain uses one"
                                  },
                                  "txId": {
                                    "type": "string",
                                    "description": "Blockchain transaction ID"
                                  },
                                  "txUrlScan": {
                                    "type": "string",
                                    "description": "Blockchain explorer URL for the transaction"
                                  },
                                  "destinationWalletAddress": {
                                    "type": "string",
                                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                  },
                                  "destinationWalletMemo": {
                                    "type": "string",
                                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                  },
                                  "destinationNetwork": {
                                    "type": "string",
                                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                  },
                                  "destinationCurrencySymbol": {
                                    "type": "string",
                                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "OPTIMISM destination details",
                                "anyOf": [
                                  {
                                    "required": [
                                      "address"
                                    ],
                                    "properties": {
                                      "address": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  },
                                  {
                                    "required": [
                                      "destinationWalletAddress"
                                    ],
                                    "properties": {
                                      "destinationWalletAddress": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  }
                                ],
                                "title": "OPTIMISM"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "AVALANCHE"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Memo for the wallet, when the chain uses one"
                                  },
                                  "txId": {
                                    "type": "string",
                                    "description": "Blockchain transaction ID"
                                  },
                                  "txUrlScan": {
                                    "type": "string",
                                    "description": "Blockchain explorer URL for the transaction"
                                  },
                                  "destinationWalletAddress": {
                                    "type": "string",
                                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                  },
                                  "destinationWalletMemo": {
                                    "type": "string",
                                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                  },
                                  "destinationNetwork": {
                                    "type": "string",
                                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                  },
                                  "destinationCurrencySymbol": {
                                    "type": "string",
                                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "AVALANCHE destination details",
                                "anyOf": [
                                  {
                                    "required": [
                                      "address"
                                    ],
                                    "properties": {
                                      "address": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  },
                                  {
                                    "required": [
                                      "destinationWalletAddress"
                                    ],
                                    "properties": {
                                      "destinationWalletAddress": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  }
                                ],
                                "title": "AVALANCHE"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BASE"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                  },
                                  "memo": {
                                    "type": "string",
                                    "description": "Memo for the wallet, when the chain uses one"
                                  },
                                  "txId": {
                                    "type": "string",
                                    "description": "Blockchain transaction ID"
                                  },
                                  "txUrlScan": {
                                    "type": "string",
                                    "description": "Blockchain explorer URL for the transaction"
                                  },
                                  "destinationWalletAddress": {
                                    "type": "string",
                                    "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                  },
                                  "destinationWalletMemo": {
                                    "type": "string",
                                    "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                  },
                                  "destinationNetwork": {
                                    "type": "string",
                                    "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                  },
                                  "destinationCurrencySymbol": {
                                    "type": "string",
                                    "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                  }
                                },
                                "required": [
                                  "type"
                                ],
                                "description": "BASE destination details",
                                "anyOf": [
                                  {
                                    "required": [
                                      "address"
                                    ],
                                    "properties": {
                                      "address": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  },
                                  {
                                    "required": [
                                      "destinationWalletAddress"
                                    ],
                                    "properties": {
                                      "destinationWalletAddress": {
                                        "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                      }
                                    }
                                  }
                                ],
                                "title": "BASE"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_COL"
                                    ]
                                  },
                                  "destinationBankCode": {
                                    "type": "string",
                                    "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                                  },
                                  "destinationBankAccountType": {
                                    "type": "string",
                                    "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "description": "Recipient ID document number. Required when creating or updating a destination."
                                  },
                                  "destinationDocumentType": {
                                    "type": "string",
                                    "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                                "title": "Bank Deposit COL"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "brebKey": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "Bre-B key (llave) that identifies the recipient account"
                                  },
                                  "email": {
                                    "type": "string",
                                    "description": "Recipient email (optional contact for the Bre-B rail)"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Recipient phone number (optional contact for the Bre-B rail)"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BRE_B_COP"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "brebKey",
                                  "type"
                                ],
                                "description": "Colombian Bre-B payout details",
                                "title": "Bre-B COP"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankCode": {
                                    "type": "string",
                                    "pattern": "^\\d{4}$",
                                    "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                                  },
                                  "destinationBankAccountNumber": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "Recipient bank account number"
                                  },
                                  "destinationBankAccountType": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                                  },
                                  "destinationDocumentType": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "Recipient ID document number"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "ACH_COP"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankCode",
                                  "destinationBankAccountNumber",
                                  "destinationBankAccountType",
                                  "destinationDocumentType",
                                  "destinationTaxId",
                                  "type"
                                ],
                                "description": "Colombian ACH payout details",
                                "title": "ACH COP"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (unused for TWD — no network discovery)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "minLength": 2,
                                    "description": "Bank name (required — TWD payouts run over SWIFT)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_TW"
                                    ]
                                  },
                                  "destinationBankBranch": {
                                    "type": "string",
                                    "minLength": 2,
                                    "description": "Bank branch (required — TWD payouts run over SWIFT)"
                                  },
                                  "bic": {
                                    "type": "string",
                                    "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                                    "description": "SWIFT BIC code (required for TWD payouts)"
                                  },
                                  "destinationBankAccountType": {
                                    "type": "string",
                                    "description": "Type of bank account (legacy, optional)"
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "description": "Tax ID of the recipient (legacy, optional)"
                                  },
                                  "destinationDocumentType": {
                                    "type": "string",
                                    "description": "Document type of the recipient (legacy, optional)"
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "destinationBankName",
                                  "type",
                                  "destinationBankBranch",
                                  "bic"
                                ],
                                "description": "Taiwan bank deposit details (SWIFT payout)",
                                "title": "Bank Deposit TW"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankCode": {
                                    "type": "string",
                                    "description": "Bank code"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationBankBranch": {
                                    "type": "string",
                                    "description": "Bank branch"
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "description": "Tax ID of the recipient"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_BR"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankCode",
                                  "destinationBankAccount",
                                  "destinationBankBranch",
                                  "destinationTaxId",
                                  "type"
                                ],
                                "description": "Brazilian bank deposit details",
                                "title": "Bank Deposit BR"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPixCode": {
                                    "type": "string",
                                    "description": "PIX code"
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "description": "Tax ID of the recipient"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "PIX_BR"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPixCode",
                                  "destinationTaxId",
                                  "type"
                                ],
                                "description": "Brazilian PIX details",
                                "title": "PIX BR"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccountNumber": {
                                    "type": "string",
                                    "description": "Bank account number"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Name of the bank"
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                                    "description": "Tax ID of the recipient"
                                  },
                                  "destinationBankAccountType": {
                                    "type": "string",
                                    "description": "Type of bank account"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_VEN"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccountNumber",
                                  "destinationBankName",
                                  "destinationTaxId",
                                  "destinationBankAccountType",
                                  "type"
                                ],
                                "description": "Venezuelan bank deposit details",
                                "title": "Bank Deposit VEN"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankCode": {
                                    "type": "string",
                                    "description": "Bank code"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                                    "description": "Tax ID of the recipient"
                                  },
                                  "destinationBankAccountType": {
                                    "type": "string",
                                    "description": "Type of bank account"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "PHONE_DEPOSIT_VEN"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankCode",
                                  "destinationPhoneNumber",
                                  "destinationTaxId",
                                  "destinationBankAccountType",
                                  "type"
                                ],
                                "description": "Venezuelan phone deposit details",
                                "title": "Phone Deposit VEN"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationIFSC": {
                                    "type": "string",
                                    "description": "IFSC code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_IN"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                "title": "Bank Deposit IN",
                                "deprecated": true
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationIFSC": {
                                    "type": "string",
                                    "description": "IFSC code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "IMPS"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                "title": "IMPS",
                                "deprecated": true
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationIFSC": {
                                    "type": "string",
                                    "description": "IFSC code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "THAI_QR"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                "title": "Thai QR",
                                "deprecated": true
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationIFSC": {
                                    "type": "string",
                                    "description": "IFSC code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "VIET_QR"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                "title": "Viet QR",
                                "deprecated": true
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationIFSC": {
                                    "type": "string",
                                    "description": "IFSC code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "GCASH"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                "title": "GCash",
                                "deprecated": true
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "description": "Tax ID"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_PAYMENT_IN"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPhoneNumber",
                                  "destinationTaxId",
                                  "type"
                                ],
                                "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                "title": "Mobile Payment IN",
                                "deprecated": true
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationBankCode": {
                                    "type": "string",
                                    "description": "Bank code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_VN"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "destinationBankCode",
                                  "type"
                                ],
                                "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                "title": "Bank Deposit VN",
                                "deprecated": true
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "bic": {
                                    "type": "string",
                                    "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "destinationAddress": {
                                    "type": "string",
                                    "description": "Address line 1 of the recipient"
                                  },
                                  "destinationCity": {
                                    "type": "string",
                                    "description": "Recipient city (defaults to Hong Kong)"
                                  },
                                  "accountHolderName": {
                                    "type": "string",
                                    "description": "Bank account holder name if different from payee"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_HK"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "bic",
                                  "destinationBankName",
                                  "destinationAddress",
                                  "type"
                                ],
                                "description": "Hong Kong bank deposit details (HKD bank corridor)",
                                "title": "Bank Deposit HK"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationBankCode": {
                                    "type": "string",
                                    "pattern": "^\\d+$",
                                    "description": "CNAPS / bank institution code (numeric, variable length)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name"
                                  },
                                  "destinationAddress": {
                                    "type": "string",
                                    "description": "Address line 1 of the recipient"
                                  },
                                  "destinationCity": {
                                    "type": "string",
                                    "description": "Recipient city"
                                  },
                                  "destinationState": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                                  },
                                  "destinationPostcode": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                                  },
                                  "destinationPhone": {
                                    "type": "string",
                                    "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                                  },
                                  "accountHolderName": {
                                    "type": "string",
                                    "description": "Bank account holder name if different from payee"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_CN"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "destinationBankCode",
                                  "destinationBankName",
                                  "destinationAddress",
                                  "destinationCity",
                                  "destinationState",
                                  "destinationPostcode",
                                  "type"
                                ],
                                "description": "China mainland bank deposit details (CNY bank corridor)",
                                "title": "Bank Deposit CN"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_AR"
                                    ]
                                  },
                                  "destinationCBU": {
                                    "type": "string",
                                    "description": "CBU — 22-digit bank account key (legacy, optional)"
                                  },
                                  "destinationCVU": {
                                    "type": "string",
                                    "description": "CVU — 22-digit virtual account key (legacy, optional)"
                                  },
                                  "destinationAlias": {
                                    "type": "string",
                                    "description": "Account alias (legacy, optional)"
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                                  },
                                  "destinationDocumentType": {
                                    "type": "string",
                                    "description": "Document type of the recipient (legacy, optional)"
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Argentinian bank deposit details",
                                "title": "Bank Deposit AR"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationBankName is given)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "Recipient bank name (required for Chilean bank payouts)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_CL"
                                    ]
                                  },
                                  "destinationBankAccountType": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                                  },
                                  "destinationDocumentType": {
                                    "type": "string",
                                    "description": "Document type of the recipient (legacy, optional)"
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "destinationBankName",
                                  "type",
                                  "destinationBankAccountType",
                                  "destinationTaxId"
                                ],
                                "description": "Chilean bank deposit details",
                                "title": "Bank Deposit CL"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "minLength": 2,
                                    "maxLength": 30,
                                    "description": "Recipient name (required, 2–30 characters)"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 11,
                                    "description": "Bank account number (max 11 digits for Bolivian accounts)"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (unused for BOB — no network discovery)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "maxLength": 20,
                                    "description": "Bank name (optional, max 20 characters)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_BO"
                                    ]
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 15,
                                    "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type",
                                  "destinationTaxId"
                                ],
                                "description": "Bolivian bank deposit details",
                                "title": "Bank Deposit BO"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_PE"
                                    ]
                                  },
                                  "destinationCCI": {
                                    "type": "string",
                                    "description": "CCI — 20-digit interbank account code (legacy, optional)"
                                  },
                                  "destinationBankAccountType": {
                                    "type": "string",
                                    "description": "Account type (corriente/ahorro) (legacy, optional)"
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                                  },
                                  "destinationDocumentType": {
                                    "type": "string",
                                    "description": "Document type of the recipient (legacy, optional)"
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "destinationNetworkId",
                                  "type"
                                ],
                                "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                "title": "Bank Deposit PE",
                                "deprecated": true
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankCode": {
                                    "type": "string",
                                    "pattern": "^\\d{3}$",
                                    "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                                  },
                                  "destinationBankAccountNumber": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 20,
                                    "description": "Recipient bank account number (max 20)"
                                  },
                                  "destinationBankAccountType": {
                                    "type": "string",
                                    "enum": [
                                      "CORRIENTE",
                                      "AHORROS",
                                      "PHONE"
                                    ],
                                    "description": "Bank account type"
                                  },
                                  "destinationCCI": {
                                    "type": "string",
                                    "pattern": "^\\d{1,20}$",
                                    "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                                  },
                                  "destinationDocumentType": {
                                    "type": "string",
                                    "enum": [
                                      "CC",
                                      "CE",
                                      "RUC",
                                      "PAS",
                                      "PAR",
                                      "LMI",
                                      "OTHER"
                                    ],
                                    "description": "Recipient identification type"
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 50,
                                    "description": "Recipient identification number (max 50)"
                                  },
                                  "email": {
                                    "type": "string",
                                    "pattern": "^.+@.+\\..+$",
                                    "description": "Recipient email (required for PEN payouts)"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "pattern": "^\\d{1,9}$",
                                    "description": "Recipient phone number (required, max 9 digits)"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_PEN"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankCode",
                                  "destinationBankAccountNumber",
                                  "destinationBankAccountType",
                                  "destinationCCI",
                                  "destinationDocumentType",
                                  "destinationTaxId",
                                  "email",
                                  "destinationPhoneNumber",
                                  "type"
                                ],
                                "description": "Peruvian bank deposit details (bank-code payout corridor).",
                                "title": "Bank Deposit PEN"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationBankName is given)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_NG"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Nigeria bank deposit details",
                                "title": "Bank Deposit NG"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationBankName is given)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_KE"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Kenya bank deposit details",
                                "title": "Bank Deposit KE"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationBankName is given)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_GH"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                "title": "Bank Deposit GH",
                                "deprecated": true
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationBankName is given)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_ZA"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "South Africa bank deposit details",
                                "title": "Bank Deposit ZA"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationBankName is given)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_TZ"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Tanzania bank deposit details",
                                "title": "Bank Deposit TZ"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationBankName is given)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_UG"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Uganda bank deposit details",
                                "title": "Bank Deposit UG"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationBankName is given)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_RW"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Rwanda bank deposit details",
                                "title": "Bank Deposit RW"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationBankName is given)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_MW"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Malawi bank deposit details",
                                "title": "Bank Deposit MW"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationBankName is given)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_ZM"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Zambia bank deposit details",
                                "title": "Bank Deposit ZM"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationBankName is given)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_BW"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Botswana bank deposit details",
                                "title": "Bank Deposit BW"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationBankName is given)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_CD"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                "title": "Bank Deposit CD",
                                "deprecated": true
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationBankName is given)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_XOF"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "West African CFA bank deposit details",
                                "title": "Bank Deposit XOF"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankAccount": {
                                    "type": "string",
                                    "description": "Bank account"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationBankName is given)"
                                  },
                                  "destinationBankName": {
                                    "type": "string",
                                    "description": "Bank name (used to resolve the network when id is omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_XAF"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccount",
                                  "type"
                                ],
                                "description": "Central African CFA bank deposit details",
                                "title": "Bank Deposit XAF"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationNetworkName is given)"
                                  },
                                  "destinationNetworkName": {
                                    "type": "string",
                                    "description": "Mobile money network name (resolves the network when id omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_NG"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPhoneNumber",
                                  "type"
                                ],
                                "description": "Nigeria mobile money details",
                                "title": "Mobile Money NG"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationNetworkName is given)"
                                  },
                                  "destinationNetworkName": {
                                    "type": "string",
                                    "description": "Mobile money network name (resolves the network when id omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_KE"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPhoneNumber",
                                  "type"
                                ],
                                "description": "Kenya mobile money details",
                                "title": "Mobile Money KE"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationNetworkName is given)"
                                  },
                                  "destinationNetworkName": {
                                    "type": "string",
                                    "description": "Mobile money network name (resolves the network when id omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_GH"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPhoneNumber",
                                  "type"
                                ],
                                "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                "title": "Mobile Money GH",
                                "deprecated": true
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationNetworkName is given)"
                                  },
                                  "destinationNetworkName": {
                                    "type": "string",
                                    "description": "Mobile money network name (resolves the network when id omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_ZA"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPhoneNumber",
                                  "type"
                                ],
                                "description": "South Africa mobile money details",
                                "title": "Mobile Money ZA"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationNetworkName is given)"
                                  },
                                  "destinationNetworkName": {
                                    "type": "string",
                                    "description": "Mobile money network name (resolves the network when id omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_TZ"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPhoneNumber",
                                  "type"
                                ],
                                "description": "Tanzania mobile money details",
                                "title": "Mobile Money TZ"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationNetworkName is given)"
                                  },
                                  "destinationNetworkName": {
                                    "type": "string",
                                    "description": "Mobile money network name (resolves the network when id omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_UG"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPhoneNumber",
                                  "type"
                                ],
                                "description": "Uganda mobile money details",
                                "title": "Mobile Money UG"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationNetworkName is given)"
                                  },
                                  "destinationNetworkName": {
                                    "type": "string",
                                    "description": "Mobile money network name (resolves the network when id omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_RW"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPhoneNumber",
                                  "type"
                                ],
                                "description": "Rwanda mobile money details",
                                "title": "Mobile Money RW"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationNetworkName is given)"
                                  },
                                  "destinationNetworkName": {
                                    "type": "string",
                                    "description": "Mobile money network name (resolves the network when id omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_MW"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPhoneNumber",
                                  "type"
                                ],
                                "description": "Malawi mobile money details",
                                "title": "Mobile Money MW"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationNetworkName is given)"
                                  },
                                  "destinationNetworkName": {
                                    "type": "string",
                                    "description": "Mobile money network name (resolves the network when id omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_ZM"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPhoneNumber",
                                  "type"
                                ],
                                "description": "Zambia mobile money details",
                                "title": "Mobile Money ZM"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationNetworkName is given)"
                                  },
                                  "destinationNetworkName": {
                                    "type": "string",
                                    "description": "Mobile money network name (resolves the network when id omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_BW"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPhoneNumber",
                                  "type"
                                ],
                                "description": "Botswana mobile money details",
                                "title": "Mobile Money BW"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationNetworkName is given)"
                                  },
                                  "destinationNetworkName": {
                                    "type": "string",
                                    "description": "Mobile money network name (resolves the network when id omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_CD"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPhoneNumber",
                                  "type"
                                ],
                                "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                "title": "Mobile Money CD",
                                "deprecated": true
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationNetworkName is given)"
                                  },
                                  "destinationNetworkName": {
                                    "type": "string",
                                    "description": "Mobile money network name (resolves the network when id omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_XOF"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPhoneNumber",
                                  "type"
                                ],
                                "description": "West African CFA mobile money details",
                                "title": "Mobile Money XOF"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPhoneNumber": {
                                    "type": "string",
                                    "description": "Phone number"
                                  },
                                  "destinationNetworkId": {
                                    "type": "string",
                                    "description": "Payout network id (optional if destinationNetworkName is given)"
                                  },
                                  "destinationNetworkName": {
                                    "type": "string",
                                    "description": "Mobile money network name (resolves the network when id omitted)"
                                  },
                                  "country": {
                                    "type": "string",
                                    "description": "ISO 3166 country code"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "MOBILE_MONEY_XAF"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPhoneNumber",
                                  "type"
                                ],
                                "description": "Central African CFA mobile money details",
                                "title": "Mobile Money XAF"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationBankCode": {
                                    "type": "string",
                                    "description": "Bank code"
                                  },
                                  "destinationBankAccountNumber": {
                                    "type": "string",
                                    "description": "Bank account number (18-digit CLABE)"
                                  },
                                  "numericReference": {
                                    "type": "string",
                                    "description": "Numeric reference"
                                  },
                                  "notesReference": {
                                    "type": "string",
                                    "description": "Notes reference"
                                  },
                                  "destinationClabe": {
                                    "type": "string",
                                    "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                                  },
                                  "destinationTaxId": {
                                    "type": "string",
                                    "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "BANK_DEPOSIT_MX"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationBankAccountNumber",
                                  "type"
                                ],
                                "description": "Mexican bank deposit details",
                                "title": "Bank Deposit MX"
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "destinationName": {
                                    "type": "string",
                                    "description": "Name of the recipient"
                                  },
                                  "destinationPseNumber": {
                                    "type": "string",
                                    "description": "PSE number"
                                  },
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "PSE"
                                    ]
                                  }
                                },
                                "required": [
                                  "destinationName",
                                  "destinationPseNumber",
                                  "type"
                                ],
                                "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                "title": "PSE",
                                "deprecated": true
                              }
                            ],
                            "description": "Detailed withdrawal information",
                            "title": "WithdrawalInfo"
                          },
                          "source": {
                            "type": "string",
                            "enum": [
                              "ui",
                              "apiApp",
                              "externalApi",
                              "internal"
                            ],
                            "description": "Source of withdrawal creation",
                            "example": "externalApi"
                          },
                          "requires2FA": {
                            "type": "boolean",
                            "description": "Whether 2FA is required for this withdrawal",
                            "example": false
                          },
                          "twoFactorToken": {
                            "type": "string",
                            "description": "2FA token for email approval",
                            "example": "abc123"
                          },
                          "twoFactorApprovedAt": {
                            "type": "number",
                            "description": "Timestamp when 2FA was approved",
                            "example": 1723027132
                          },
                          "errorCode": {
                            "type": "string",
                            "description": "Error code when status is Review",
                            "example": "INSUFFICIENT_BALANCE"
                          },
                          "errorDetails": {
                            "type": "string",
                            "description": "Detailed error information",
                            "example": "Insufficient balance for withdrawal"
                          },
                          "reviewedBy": {
                            "type": "string",
                            "description": "Admin email who reviewed the withdrawal",
                            "example": "admin@example.com"
                          },
                          "reviewedAt": {
                            "type": "number",
                            "description": "Timestamp when review happened",
                            "example": 1723027132
                          }
                        },
                        "required": [
                          "withdrawalId",
                          "createdAt",
                          "amount",
                          "currency",
                          "fee",
                          "feeCurrency",
                          "status"
                        ],
                        "description": "Details of the withdrawal associated with the order"
                      },
                      "createdAt": {
                        "type": "number",
                        "description": "Creation time of the order (timestamp)",
                        "examples": [
                          1723027132,
                          1723027200,
                          1723027300
                        ]
                      },
                      "updatedAt": {
                        "type": "number",
                        "description": "Last update time of the order (timestamp)",
                        "examples": [
                          1723027132,
                          1723027200,
                          1723027300
                        ]
                      },
                      "status": {
                        "type": "string",
                        "enum": [
                          "Pending",
                          "Processing",
                          "Reviewing",
                          "Success",
                          "Failed",
                          "Canceled"
                        ],
                        "description": "Current status of the order",
                        "title": "OrderStatus",
                        "examples": [
                          "Pending",
                          "Processing",
                          "Reviewing",
                          "Success",
                          "Failed"
                        ]
                      },
                      "externalReference": {
                        "type": "string",
                        "description": "External reference of the order, as you supplied it on create."
                      },
                      "externalRefeference": {
                        "type": "string",
                        "description": "Deprecated misspelling of `externalReference` — same value. Read `externalReference` instead; this key remains for backward compatibility and will be removed in a future major version.",
                        "deprecated": true
                      },
                      "fee": {
                        "type": "number",
                        "minimum": 0,
                        "description": "Total fee for the order once all the execution is completed",
                        "examples": [
                          6.37,
                          8.5,
                          10.25
                        ]
                      },
                      "expectedFee": {
                        "type": "number",
                        "minimum": 0,
                        "exclusiveMinimum": true,
                        "description": "Expected fee given the initial deposit amount",
                        "examples": [
                          6.88,
                          9.2,
                          11.5
                        ]
                      },
                      "expectedGasFee": {
                        "type": "number",
                        "description": "Expected gas fee if the withdrawal is with crypto",
                        "examples": [
                          6.88,
                          8.5,
                          10.25
                        ]
                      },
                      "feeCurrency": {
                        "type": "string",
                        "description": "Currency of the fee",
                        "examples": [
                          "EUR",
                          "USD",
                          "GBP"
                        ]
                      }
                    },
                    "required": [
                      "orderId",
                      "createdAt",
                      "status",
                      "fee",
                      "expectedFee",
                      "feeCurrency"
                    ],
                    "description": "Schema representing order details"
                  },
                  "description": "Response schema for listing orders"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/orders\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/orders\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/orders\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/orders/{orderId}": {
      "get": {
        "summary": "Get order details",
        "description": "This endpoint retrieves details of a specific order.",
        "tags": [
          "Orders"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 12,
              "maxLength": 12,
              "pattern": "^[A-Z0-9]{12}$",
              "description": "ID of the order",
              "examples": [
                "01CLFXMT67II",
                "2R7E5Y5KFXP8",
                "4FWWRE3Y2URM"
              ]
            },
            "required": true,
            "description": "ID of the order",
            "name": "orderId",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful retrieval of order details",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "orderId": {
                      "type": "string",
                      "description": "ID of the order",
                      "examples": [
                        "01CLFXMT67II",
                        "2R7E5Y5KFXP8",
                        "4FWWRE3Y2URM"
                      ]
                    },
                    "deposit": {
                      "type": "object",
                      "properties": {
                        "depositId": {
                          "type": "string",
                          "minLength": 1,
                          "description": "ID of the deposit. Normally a 12-character internal id; deposits created before mid-2026 may carry a longer legacy id. Treat it as an opaque string."
                        },
                        "externalReference": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 128,
                          "description": "Your own reference for this deposit. Stored as-is and returned on create, detail and list, so you can look the deposit up by it after a network timeout instead of retrying blind. Not interpreted by VirtuaBroker and not shown to the payer — for the payer's transfer reference use depositInfo.referenceCode.",
                          "examples": [
                            "partner-ref-0001",
                            "inv_2026_00417"
                          ]
                        },
                        "userData": {
                          "oneOf": [
                            {
                              "type": "object",
                              "properties": {
                                "userType": {
                                  "type": "string",
                                  "enum": [
                                    "individual"
                                  ]
                                },
                                "firstName": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 50,
                                  "description": "First name of the user making the deposit (or representative for business)",
                                  "examples": [
                                    "John",
                                    "Alice",
                                    "Bob"
                                  ]
                                },
                                "lastName": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 100,
                                  "description": "Last name of the user making the deposit (or representative for business)",
                                  "examples": [
                                    "Doe",
                                    "Smith",
                                    "Johnson"
                                  ]
                                },
                                "userEmail": {
                                  "type": "string",
                                  "maxLength": 254,
                                  "format": "email",
                                  "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                  "description": "Email of the user making the deposit",
                                  "examples": [
                                    "user@virtuabroker.com",
                                    "john.doe@example.com",
                                    "alice@example.com"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "maxLength": 150,
                                  "description": "Address of the user making the deposit",
                                  "examples": [
                                    "123 Main St, Anytown, ES",
                                    "456 Elm St, Anytown, ES",
                                    "789 Oak St, Anytown, ES"
                                  ]
                                },
                                "taxDocumentType": {
                                  "type": "string",
                                  "maxLength": 50,
                                  "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                  "examples": [
                                    "CC",
                                    "NIT",
                                    "CE",
                                    "NIF",
                                    "Other"
                                  ]
                                },
                                "taxId": {
                                  "type": "string",
                                  "maxLength": 30,
                                  "description": "Tax ID of the user making the deposit",
                                  "examples": [
                                    "123-45-6789",
                                    "987-65-4321",
                                    "111-22-3333"
                                  ]
                                },
                                "country": {
                                  "type": "string",
                                  "enum": [
                                    "US",
                                    "CA",
                                    "GB",
                                    "DE",
                                    "FR",
                                    "AU",
                                    "JP",
                                    "KR",
                                    "SE",
                                    "NO",
                                    "DK",
                                    "FI",
                                    "NL",
                                    "BE",
                                    "CH",
                                    "AT",
                                    "NZ",
                                    "SG",
                                    "IE",
                                    "LU",
                                    "PT",
                                    "ES",
                                    "IT",
                                    "GR",
                                    "CZ",
                                    "PL",
                                    "HU",
                                    "SK",
                                    "SI",
                                    "EE",
                                    "LT",
                                    "LV",
                                    "IS",
                                    "MT",
                                    "CY",
                                    "HR",
                                    "RO",
                                    "BG",
                                    "BR",
                                    "AR",
                                    "CL",
                                    "MX",
                                    "CO",
                                    "PE",
                                    "PA",
                                    "UY",
                                    "BO",
                                    "ZA",
                                    "NG",
                                    "KE",
                                    "GH",
                                    "TZ",
                                    "UG",
                                    "RW",
                                    "MW",
                                    "ZM",
                                    "BW",
                                    "CD",
                                    "CI",
                                    "CM",
                                    "IL",
                                    "AE",
                                    "QA",
                                    "SA",
                                    "OM",
                                    "KW",
                                    "BH",
                                    "MY",
                                    "PH",
                                    "TH",
                                    "VN",
                                    "ID",
                                    "IN",
                                    "LK",
                                    "NP",
                                    "BD",
                                    "PK",
                                    "EG",
                                    "MA",
                                    "DZ",
                                    "TN",
                                    "JO",
                                    "LB",
                                    "TR",
                                    "KH",
                                    "MM",
                                    "LA",
                                    "EN",
                                    "BT",
                                    "VE",
                                    "TW",
                                    "HK",
                                    "CN"
                                  ],
                                  "description": "Country code of the user making the deposit",
                                  "examples": [
                                    "ES",
                                    "US",
                                    "GB"
                                  ]
                                },
                                "state": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 100,
                                  "description": "State of the user making the deposit",
                                  "examples": [
                                    "Madrid",
                                    "New York",
                                    "London"
                                  ]
                                },
                                "postalCode": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 30,
                                  "description": "Postal code of the user making the deposit",
                                  "examples": [
                                    "12345",
                                    "67890",
                                    "abcde"
                                  ]
                                },
                                "city": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 100,
                                  "description": "City of the user making the deposit",
                                  "examples": [
                                    "Madrid",
                                    "New York",
                                    "London"
                                  ]
                                },
                                "dob": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 30,
                                  "description": "Date of birth of the user making the deposit",
                                  "examples": [
                                    "1990-01-01",
                                    "1995-05-15",
                                    "1988-12-31"
                                  ]
                                },
                                "phoneNumber": {
                                  "type": "string",
                                  "maxLength": 30,
                                  "description": "Phone number of the user making the deposit",
                                  "examples": [
                                    "+447700900123",
                                    "+447700900456",
                                    "+447700900789"
                                  ]
                                },
                                "kycId": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 300,
                                  "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                  "examples": [
                                    "kyc-12345",
                                    "kyc-67890",
                                    "kyc-abcde"
                                  ]
                                },
                                "activity": {
                                  "type": "string",
                                  "description": "Activity of the user making the deposit",
                                  "examples": [
                                    "worker",
                                    "business",
                                    "student"
                                  ]
                                }
                              },
                              "required": [
                                "userType",
                                "firstName",
                                "userEmail",
                                "country"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "userType": {
                                  "type": "string",
                                  "enum": [
                                    "business"
                                  ]
                                },
                                "businessName": {
                                  "type": "string",
                                  "maxLength": 150,
                                  "description": "Business name (required when userType is business)",
                                  "examples": [
                                    "Acme Corp",
                                    "Tech Solutions Inc",
                                    "Global Services Ltd"
                                  ]
                                },
                                "firstName": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 50,
                                  "description": "First name of the user making the deposit (or representative for business)",
                                  "examples": [
                                    "John",
                                    "Alice",
                                    "Bob"
                                  ]
                                },
                                "userEmail": {
                                  "type": "string",
                                  "maxLength": 254,
                                  "format": "email",
                                  "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                  "description": "Email of the user making the deposit",
                                  "examples": [
                                    "user@virtuabroker.com",
                                    "john.doe@example.com",
                                    "alice@example.com"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "maxLength": 150,
                                  "description": "Address of the user making the deposit",
                                  "examples": [
                                    "123 Main St, Anytown, ES",
                                    "456 Elm St, Anytown, ES",
                                    "789 Oak St, Anytown, ES"
                                  ]
                                },
                                "taxDocumentType": {
                                  "type": "string",
                                  "maxLength": 50,
                                  "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                  "examples": [
                                    "CC",
                                    "NIT",
                                    "CE",
                                    "NIF",
                                    "Other"
                                  ]
                                },
                                "taxId": {
                                  "type": "string",
                                  "maxLength": 30,
                                  "description": "Tax ID of the user making the deposit",
                                  "examples": [
                                    "123-45-6789",
                                    "987-65-4321",
                                    "111-22-3333"
                                  ]
                                },
                                "country": {
                                  "type": "string",
                                  "enum": [
                                    "US",
                                    "CA",
                                    "GB",
                                    "DE",
                                    "FR",
                                    "AU",
                                    "JP",
                                    "KR",
                                    "SE",
                                    "NO",
                                    "DK",
                                    "FI",
                                    "NL",
                                    "BE",
                                    "CH",
                                    "AT",
                                    "NZ",
                                    "SG",
                                    "IE",
                                    "LU",
                                    "PT",
                                    "ES",
                                    "IT",
                                    "GR",
                                    "CZ",
                                    "PL",
                                    "HU",
                                    "SK",
                                    "SI",
                                    "EE",
                                    "LT",
                                    "LV",
                                    "IS",
                                    "MT",
                                    "CY",
                                    "HR",
                                    "RO",
                                    "BG",
                                    "BR",
                                    "AR",
                                    "CL",
                                    "MX",
                                    "CO",
                                    "PE",
                                    "PA",
                                    "UY",
                                    "BO",
                                    "ZA",
                                    "NG",
                                    "KE",
                                    "GH",
                                    "TZ",
                                    "UG",
                                    "RW",
                                    "MW",
                                    "ZM",
                                    "BW",
                                    "CD",
                                    "CI",
                                    "CM",
                                    "IL",
                                    "AE",
                                    "QA",
                                    "SA",
                                    "OM",
                                    "KW",
                                    "BH",
                                    "MY",
                                    "PH",
                                    "TH",
                                    "VN",
                                    "ID",
                                    "IN",
                                    "LK",
                                    "NP",
                                    "BD",
                                    "PK",
                                    "EG",
                                    "MA",
                                    "DZ",
                                    "TN",
                                    "JO",
                                    "LB",
                                    "TR",
                                    "KH",
                                    "MM",
                                    "LA",
                                    "EN",
                                    "BT",
                                    "VE",
                                    "TW",
                                    "HK",
                                    "CN"
                                  ],
                                  "description": "Country code of the user making the deposit",
                                  "examples": [
                                    "ES",
                                    "US",
                                    "GB"
                                  ]
                                },
                                "state": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 100,
                                  "description": "State of the user making the deposit",
                                  "examples": [
                                    "Madrid",
                                    "New York",
                                    "London"
                                  ]
                                },
                                "postalCode": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 30,
                                  "description": "Postal code of the user making the deposit",
                                  "examples": [
                                    "12345",
                                    "67890",
                                    "abcde"
                                  ]
                                },
                                "city": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 100,
                                  "description": "City of the user making the deposit",
                                  "examples": [
                                    "Madrid",
                                    "New York",
                                    "London"
                                  ]
                                },
                                "dob": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 30,
                                  "description": "Date of birth of the user making the deposit",
                                  "examples": [
                                    "1990-01-01",
                                    "1995-05-15",
                                    "1988-12-31"
                                  ]
                                },
                                "phoneNumber": {
                                  "type": "string",
                                  "maxLength": 30,
                                  "description": "Phone number of the user making the deposit",
                                  "examples": [
                                    "+447700900123",
                                    "+447700900456",
                                    "+447700900789"
                                  ]
                                },
                                "kycId": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 300,
                                  "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                  "examples": [
                                    "kyc-12345",
                                    "kyc-67890",
                                    "kyc-abcde"
                                  ]
                                },
                                "activity": {
                                  "type": "string",
                                  "description": "Activity of the user making the deposit",
                                  "examples": [
                                    "worker",
                                    "business",
                                    "student"
                                  ]
                                }
                              },
                              "required": [
                                "userType",
                                "businessName",
                                "firstName",
                                "userEmail",
                                "country"
                              ]
                            }
                          ],
                          "description": "User data of the person/company making the deposit",
                          "examples": [
                            {
                              "userType": "individual",
                              "firstName": "John",
                              "lastName": "Doe",
                              "userEmail": "user@virtuabroker.com",
                              "address": "123 Main St, Anytown, ES",
                              "taxId": "123-45-6789",
                              "country": "ES"
                            },
                            {
                              "userType": "individual",
                              "firstName": "Alice",
                              "lastName": "Smith",
                              "userEmail": "alice@example.com",
                              "address": "456 Elm St, Anytown, ES",
                              "taxId": "987-65-4321",
                              "country": "ES"
                            }
                          ]
                        },
                        "createdAt": {
                          "type": "number",
                          "description": "Creation time of the deposit",
                          "examples": [
                            1723027132,
                            1723027133,
                            1723027134
                          ]
                        },
                        "rail": {
                          "type": "string",
                          "enum": [
                            "BALANCE",
                            "SEPA",
                            "BTC",
                            "ETH",
                            "MATIC",
                            "POLYGON",
                            "CELO",
                            "TRON",
                            "SOLANA",
                            "ARBITRUM",
                            "OPTIMISM",
                            "AVALANCHE",
                            "BSC",
                            "BASE",
                            "XRP",
                            "PIX_BR",
                            "UPI",
                            "IMPS",
                            "TRY_BANK_TRANSFER",
                            "AED_BANK_TRANSFER",
                            "SPEI",
                            "IDR_BANK_TRANSFER",
                            "CREDIT_CARD",
                            "THAI_QR",
                            "VIET_QR",
                            "GCASH",
                            "ARGENTINA_BANK_TRANSFER",
                            "PSE",
                            "CLABE",
                            "PIX",
                            "BANK_DEPOSIT_COL",
                            "BANK_DEPOSIT_AR",
                            "BANK_DEPOSIT_CL",
                            "BANK_DEPOSIT_PE",
                            "BANK_DEPOSIT_BO",
                            "BANK_DEPOSIT_BR",
                            "BANK_DEPOSIT_NG",
                            "BANK_DEPOSIT_KE",
                            "BANK_DEPOSIT_GH",
                            "BANK_DEPOSIT_ZA",
                            "BANK_DEPOSIT_TZ",
                            "BANK_DEPOSIT_UG",
                            "BANK_DEPOSIT_RW",
                            "BANK_DEPOSIT_MW",
                            "BANK_DEPOSIT_ZM",
                            "BANK_DEPOSIT_BW",
                            "BANK_DEPOSIT_CD",
                            "BANK_DEPOSIT_XOF",
                            "BANK_DEPOSIT_XAF",
                            "MOBILE_MONEY_NG",
                            "MOBILE_MONEY_KE",
                            "MOBILE_MONEY_GH",
                            "MOBILE_MONEY_ZA",
                            "MOBILE_MONEY_TZ",
                            "MOBILE_MONEY_UG",
                            "MOBILE_MONEY_RW",
                            "MOBILE_MONEY_MW",
                            "MOBILE_MONEY_ZM",
                            "MOBILE_MONEY_BW",
                            "MOBILE_MONEY_CD",
                            "MOBILE_MONEY_XOF",
                            "MOBILE_MONEY_XAF",
                            "ACH_US",
                            "GBP_BANK_TRANSFER"
                          ],
                          "description": "Rail of the deposit"
                        },
                        "receivedAt": {
                          "type": "number",
                          "description": "Unix ms timestamp of when the funds for this deposit ARRIVED — recorded when the incoming payment is matched to the deposit, which is before it is credited. Present whenever funds have arrived, including a deposit whose funds are still held in review; omitted entirely when no funds ever arrived, so a never-funded or cancelled deposit has no value here and its presence is a reliable settlement signal for reconciliation. Identical on GET /v1/deposits and GET /v1/deposits/{depositId}. Note that the deposit object embedded in order and operation responses does not yet apply this rule — it returns the stored value. Not the creation time — use createdAt for that.",
                          "examples": [
                            1723027132000,
                            1723027133000,
                            1723027134000
                          ]
                        },
                        "expectedAmount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Amount expected of the deposit",
                          "examples": [
                            1000,
                            2000,
                            3000
                          ]
                        },
                        "amount": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Amount received of the deposit",
                          "examples": [
                            1000,
                            2000,
                            3000
                          ]
                        },
                        "currency": {
                          "anyOf": [
                            {
                              "type": "string",
                              "enum": [
                                "EUR",
                                "USD",
                                "GBP",
                                "BRL",
                                "MXN",
                                "ARS",
                                "COP",
                                "PEN",
                                "NGN",
                                "KES",
                                "TZS",
                                "UGX",
                                "RWF",
                                "MWK",
                                "ZMW",
                                "XOF",
                                "XAF",
                                "BWP"
                              ]
                            },
                            {
                              "type": "string",
                              "enum": [
                                "USDC",
                                "USDT",
                                "CUSD",
                                "BTC",
                                "ETH",
                                "POL",
                                "SOL",
                                "TRX",
                                "AVAX",
                                "XRP",
                                "BNB"
                              ]
                            }
                          ],
                          "description": "Currency of the deposit",
                          "examples": [
                            "EUR",
                            "BRL"
                          ]
                        },
                        "fee": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Fee for the deposit. This value is written once the deposit has been executed. Meanwhile it will appear 0.",
                          "example": 10
                        },
                        "expectedFee": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Fee for the deposit. This value is correlated with the expected amount for the deposit.",
                          "examples": [
                            10,
                            20,
                            30
                          ]
                        },
                        "feeCurrency": {
                          "anyOf": [
                            {
                              "type": "string",
                              "enum": [
                                "EUR",
                                "USD",
                                "GBP",
                                "BRL",
                                "MXN",
                                "ARS",
                                "COP",
                                "PEN",
                                "NGN",
                                "KES",
                                "TZS",
                                "UGX",
                                "RWF",
                                "MWK",
                                "ZMW",
                                "XOF",
                                "XAF",
                                "BWP"
                              ]
                            },
                            {
                              "type": "string",
                              "enum": [
                                "USDC",
                                "USDT",
                                "CUSD",
                                "BTC",
                                "ETH",
                                "POL",
                                "SOL",
                                "TRX",
                                "AVAX",
                                "XRP",
                                "BNB"
                              ]
                            }
                          ],
                          "description": "Currency of the fee",
                          "examples": [
                            "EUR",
                            "BRL"
                          ]
                        },
                        "status": {
                          "anyOf": [
                            {
                              "type": "string",
                              "enum": [
                                "Pending",
                                "Processing",
                                "Success",
                                "Failed",
                                "Canceled",
                                "Reviewing"
                              ],
                              "description": "Common status values that are shared across all operation types",
                              "examples": [
                                "Pending",
                                "Processing",
                                "Success",
                                "Failed",
                                "Canceled",
                                "Reviewing"
                              ]
                            },
                            {
                              "type": "string",
                              "enum": [
                                "PendingCancel",
                                "Received"
                              ]
                            }
                          ],
                          "description": "Status of the deposit",
                          "examples": [
                            "Pending",
                            "Success",
                            "Failed",
                            "Received",
                            "PendingCancel"
                          ]
                        },
                        "depositInfo": {
                          "oneOf": [
                            {
                              "type": "object",
                              "properties": {
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Name of the account holder",
                                  "example": "John Doe"
                                },
                                "iban": {
                                  "type": "string",
                                  "description": "SEPA Bank Account Number",
                                  "example": "DE8937XXXXXXXXXXXX3000"
                                },
                                "bic": {
                                  "type": "string",
                                  "description": "Bank BIC/SWIFT code",
                                  "example": "DEUTDEFF"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Name of the bank",
                                  "example": "Deutsche Bank"
                                },
                                "bankAddress": {
                                  "type": "string",
                                  "description": "Address of the bank",
                                  "example": "Taunusanlage 12"
                                },
                                "bankCity": {
                                  "type": "string",
                                  "description": "City of the bank",
                                  "example": "Frankfurt am Main"
                                },
                                "bankZipcode": {
                                  "type": "string",
                                  "description": "Zipcode of the bank",
                                  "example": "60325"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "enum": [
                                    "US",
                                    "CA",
                                    "GB",
                                    "DE",
                                    "FR",
                                    "AU",
                                    "JP",
                                    "KR",
                                    "SE",
                                    "NO",
                                    "DK",
                                    "FI",
                                    "NL",
                                    "BE",
                                    "CH",
                                    "AT",
                                    "NZ",
                                    "SG",
                                    "IE",
                                    "LU",
                                    "PT",
                                    "ES",
                                    "IT",
                                    "GR",
                                    "CZ",
                                    "PL",
                                    "HU",
                                    "SK",
                                    "SI",
                                    "EE",
                                    "LT",
                                    "LV",
                                    "IS",
                                    "MT",
                                    "CY",
                                    "HR",
                                    "RO",
                                    "BG",
                                    "BR",
                                    "AR",
                                    "CL",
                                    "MX",
                                    "CO",
                                    "PE",
                                    "PA",
                                    "UY",
                                    "BO",
                                    "ZA",
                                    "NG",
                                    "KE",
                                    "GH",
                                    "TZ",
                                    "UG",
                                    "RW",
                                    "MW",
                                    "ZM",
                                    "BW",
                                    "CD",
                                    "CI",
                                    "CM",
                                    "IL",
                                    "AE",
                                    "QA",
                                    "SA",
                                    "OM",
                                    "KW",
                                    "BH",
                                    "MY",
                                    "PH",
                                    "TH",
                                    "VN",
                                    "ID",
                                    "IN",
                                    "LK",
                                    "NP",
                                    "BD",
                                    "PK",
                                    "EG",
                                    "MA",
                                    "DZ",
                                    "TN",
                                    "JO",
                                    "LB",
                                    "TR",
                                    "KH",
                                    "MM",
                                    "LA",
                                    "EN",
                                    "BT",
                                    "VE",
                                    "TW",
                                    "HK",
                                    "CN"
                                  ],
                                  "description": "Country of the bank",
                                  "example": "DE"
                                },
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "SEPA"
                                  ]
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount. It can be 0 for open-amount bank transfers where the sender chooses the final amount from their bank.",
                                  "example": 1000
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order. The user must include this code when making the deposit to ensure accurate processing. In cases where the reference code is incorrect or missing, we manually match orders based on the sender's name and other available details. In case the deposit is not matched, we will mark the order as Reviewing and the system will require manual attention.",
                                  "example": "REF123456"
                                },
                                "extraDepositMethods": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "methodType": {
                                        "type": "string",
                                        "enum": [
                                          "HOSTED_CHECKOUT"
                                        ],
                                        "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                                      },
                                      "url": {
                                        "type": "string",
                                        "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                                        "example": "https://checkout.example.com/pay/abc123"
                                      },
                                      "callbackUrl": {
                                        "type": "string",
                                        "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                                      },
                                      "referenceCode": {
                                        "type": "string",
                                        "description": "Payment reference for this method (equals the deposit/order reference)"
                                      },
                                      "amount": {
                                        "type": "number",
                                        "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                                      },
                                      "currency": {
                                        "type": "string",
                                        "description": "Currency of this method"
                                      },
                                      "expiresAt": {
                                        "type": "number",
                                        "description": "Unix ms after which `url` is no longer valid, when known"
                                      }
                                    },
                                    "required": [
                                      "methodType",
                                      "url"
                                    ],
                                    "description": "An additional, optional way to pay this deposit"
                                  },
                                  "description": "Additional, optional ways to pay this same deposit (e.g. a hosted card page). The bank details above remain the primary method; ignore this field if you only support bank transfer."
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ],
                              "description": "Detailed information about a bank deposit, including the amount and a unique reference code for identification."
                            },
                            {
                              "type": "object",
                              "properties": {
                                "address": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Crypto wallet address",
                                  "example": "0x1A2b3C4d5E6f7890AbCdEf1234567890AbCdEf12"
                                },
                                "network": {
                                  "type": "string",
                                  "enum": [
                                    "MATIC",
                                    "ETH",
                                    "CELO",
                                    "TRON",
                                    "BTC",
                                    "SOLANA",
                                    "XRP",
                                    "CARDANO",
                                    "BSC",
                                    "ARBITRUM",
                                    "OPTIMISM",
                                    "AVALANCHE",
                                    "BASE"
                                  ],
                                  "description": "Network for the deposit for crypto deposits",
                                  "examples": [
                                    "ETH",
                                    "MATIC",
                                    "CELO"
                                  ]
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Optional memo for the transaction",
                                  "example": "Payment for services"
                                },
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "CRYPTO"
                                  ]
                                },
                                "qrCode": {
                                  "type": "string",
                                  "description": "Base64-encoded QR image for the deposit address",
                                  "example": "iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAIAAADTED8xAAABpklEQVR42u3BAQ0AAADCoPdPbQ8HFAAAAAAAAAAAAAAAAAA..."
                                },
                                "qrCodeUrl": {
                                  "type": "string",
                                  "format": "uri",
                                  "description": "7-day signed GCS URL of the QR code PNG"
                                },
                                "qrCodeExpiresAt": {
                                  "type": "number",
                                  "description": "Unix timestamp (ms) when qrCodeUrl expires"
                                },
                                "receivingAddress": {
                                  "type": "string",
                                  "description": "The wallet address where funds should be sent",
                                  "example": "0xAbCdEf0123456789AbCdEf0123456789AbCdEf01"
                                },
                                "tokenContract": {
                                  "type": "string",
                                  "description": "The ERC20 token contract address",
                                  "example": "0x765DE816845861e75A25fCA122bb6898B8B1282a"
                                },
                                "decimals": {
                                  "type": "number",
                                  "description": "Token decimals (default 18)",
                                  "example": 18
                                }
                              },
                              "required": [
                                "address",
                                "network",
                                "depositType"
                              ],
                              "description": "Crypto Deposit Information"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "base64QRCode": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Base64 encoded QR code",
                                  "example": "base64QRCode"
                                },
                                "qrCodeString": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "The Pix copy-and-paste code (BR Code payload) the payer pastes into their bank app. Pass it through unchanged — it carries its own checksum.",
                                  "example": "qrCodeString"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order",
                                  "example": "REF123456"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "exclusiveMinimum": true,
                                  "description": "The monetary value to be deposited into the bank. This amount should be positive and accurately reflect the intended deposit.",
                                  "example": 1000
                                },
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "PIX"
                                  ]
                                }
                              },
                              "required": [
                                "base64QRCode",
                                "qrCodeString",
                                "referenceCode",
                                "amount",
                                "depositType"
                              ],
                              "description": "Pix Deposit Information"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "CREDIT_CARD"
                                  ]
                                }
                              },
                              "required": [
                                "depositType"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "bankName": {
                                  "type": "string",
                                  "description": "Name of the bank (present when the rail provides it)"
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Name of the account holder (present when the rail provides it)"
                                },
                                "clabe": {
                                  "type": "string",
                                  "description": "CLABE number"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Bank account number (e.g. from the BANK_TRANSFER payment method)"
                                },
                                "reference": {
                                  "type": "string",
                                  "description": "Payment reference (e.g. from the BANK_TRANSFER payment method)"
                                },
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "CLABE"
                                  ],
                                  "description": "Type of the deposit"
                                }
                              },
                              "required": [
                                "clabe",
                                "depositType"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "url": {
                                  "type": "string",
                                  "description": "URL of the PSE payment"
                                },
                                "amountPrefilled": {
                                  "type": "boolean",
                                  "description": "Whether the payment page already carries the amount. When false or absent, the payer must enter it."
                                },
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "PSE"
                                  ],
                                  "description": "Type of the deposit"
                                }
                              },
                              "required": [
                                "url",
                                "depositType"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BALANCE"
                                  ]
                                }
                              },
                              "required": [
                                "depositType"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "PENDING"
                                  ]
                                },
                                "currency": {
                                  "type": "string",
                                  "description": "Currency of the deposit"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the order/deposit"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount. It can be 0 while bank transfer details are open-amount or still being provisioned."
                                },
                                "extraDepositMethods": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "methodType": {
                                        "type": "string",
                                        "enum": [
                                          "HOSTED_CHECKOUT"
                                        ],
                                        "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                                      },
                                      "url": {
                                        "type": "string",
                                        "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                                        "example": "https://checkout.example.com/pay/abc123"
                                      },
                                      "callbackUrl": {
                                        "type": "string",
                                        "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                                      },
                                      "referenceCode": {
                                        "type": "string",
                                        "description": "Payment reference for this method (equals the deposit/order reference)"
                                      },
                                      "amount": {
                                        "type": "number",
                                        "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                                      },
                                      "currency": {
                                        "type": "string",
                                        "description": "Currency of this method"
                                      },
                                      "expiresAt": {
                                        "type": "number",
                                        "description": "Unix ms after which `url` is no longer valid, when known"
                                      }
                                    },
                                    "required": [
                                      "methodType",
                                      "url"
                                    ],
                                    "description": "An additional, optional way to pay this deposit"
                                  },
                                  "description": "Additional ways to pay while the bank details are being provisioned (e.g. a hosted card page). Optional — ignore it and wait for the bank details if you only support bank transfer."
                                },
                                "pendingReason": {
                                  "type": "string",
                                  "enum": [
                                    "collection_account_activating",
                                    "accountless_per_account_corridor"
                                  ],
                                  "description": "Why the instructions are still being provisioned, when the reason is known. `collection_account_activating` means the collection account for this payer is being activated and payable details are expected shortly. `accountless_per_account_corridor` means this corridor collects only into a collection account dedicated to the paying account, this request names no account, and none can be created for it — so payable details will NOT arrive by waiting; create the deposit against an account instead. Absence never conveys timing on either surface: here it means only that no reason is classifiable, and an account-level deposit-method instruction never carries the field at all. Treat the values as an open set and ignore any you do not recognise."
                                }
                              },
                              "required": [
                                "depositType",
                                "currency",
                                "referenceCode",
                                "amount"
                              ],
                              "description": "Deposit details are being provisioned; poll the order/deposit or wait for webhook"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "IMPS"
                                  ]
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Name of the bank"
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Name of the account holder"
                                },
                                "ifsc": {
                                  "type": "string",
                                  "description": "ifsc number"
                                },
                                "type": {
                                  "type": "string",
                                  "description": "Type of the deposit"
                                },
                                "branch": {
                                  "type": "string",
                                  "description": "Branch of the bank"
                                },
                                "bank": {
                                  "type": "string",
                                  "description": "Bank of the account"
                                },
                                "otp": {
                                  "type": "string",
                                  "description": "OTP of the deposit"
                                },
                                "bankNotes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "number",
                                        "description": "Type of note: -1 for warning, 1 for info"
                                      },
                                      "msg": {
                                        "type": "string",
                                        "description": "Message content"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "msg"
                                    ]
                                  },
                                  "description": "Additional bank instructions"
                                }
                              },
                              "required": [
                                "depositType",
                                "accountNumber",
                                "bankName",
                                "accountHolder",
                                "ifsc",
                                "type",
                                "branch",
                                "bank",
                                "otp"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "UPI"
                                  ]
                                },
                                "vpa": {
                                  "type": "string",
                                  "description": "Virtual Payment Address"
                                },
                                "name": {
                                  "type": "string",
                                  "description": "Name of the account holder"
                                },
                                "otp": {
                                  "type": "string",
                                  "description": "OTP for the transaction"
                                },
                                "paymentLink": {
                                  "type": "string",
                                  "description": "Payment link"
                                },
                                "upiNotes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "number",
                                        "description": "Type of note: -1 for warning, 1 for info"
                                      },
                                      "msg": {
                                        "type": "string",
                                        "description": "Message content"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "msg"
                                    ]
                                  },
                                  "description": "Additional UPI instructions"
                                }
                              },
                              "required": [
                                "depositType",
                                "vpa",
                                "name",
                                "otp",
                                "paymentLink"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "AED_BANK_TRANSFER"
                                  ]
                                },
                                "iban": {
                                  "type": "string",
                                  "description": "International Bank Account Number"
                                },
                                "name": {
                                  "type": "string",
                                  "description": "Name of the account holder"
                                },
                                "bank": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "type": {
                                  "type": "string",
                                  "description": "Account type"
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Bank address"
                                },
                                "email": {
                                  "type": "string",
                                  "description": "Contact email"
                                },
                                "phoneNumber": {
                                  "type": "string",
                                  "description": "Contact phone number"
                                },
                                "transferCode": {
                                  "type": "string",
                                  "description": "Transfer code"
                                },
                                "poBox": {
                                  "type": "string",
                                  "description": "P.O. Box"
                                },
                                "otp": {
                                  "type": "string",
                                  "description": "OTP for the transaction"
                                },
                                "bankNotes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "number",
                                        "description": "Type of note: -1 for warning, 1 for info"
                                      },
                                      "msg": {
                                        "type": "string",
                                        "description": "Message content"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "msg"
                                    ]
                                  },
                                  "description": "Additional bank instructions"
                                }
                              },
                              "required": [
                                "depositType",
                                "iban",
                                "name",
                                "bank",
                                "type",
                                "address",
                                "email",
                                "phoneNumber",
                                "transferCode",
                                "poBox",
                                "otp"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "SPEI"
                                  ]
                                },
                                "clabe": {
                                  "type": "string",
                                  "description": "CLABE number"
                                },
                                "name": {
                                  "type": "string",
                                  "description": "Name of the account holder"
                                },
                                "bank": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankNotes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "number",
                                        "description": "Type of note: -1 for warning, 1 for info"
                                      },
                                      "msg": {
                                        "type": "string",
                                        "description": "Message content"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "msg"
                                    ]
                                  },
                                  "description": "Additional bank instructions"
                                }
                              },
                              "required": [
                                "depositType",
                                "clabe",
                                "name",
                                "bank"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "TRY_BANK_TRANSFER"
                                  ]
                                },
                                "iban": {
                                  "type": "string",
                                  "description": "International Bank Account Number"
                                },
                                "name": {
                                  "type": "string",
                                  "description": "Name of the account holder"
                                },
                                "bank": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "otp": {
                                  "type": "string",
                                  "description": "OTP for the transaction"
                                },
                                "bankNotes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "number",
                                        "description": "Type of note: -1 for warning, 1 for info"
                                      },
                                      "msg": {
                                        "type": "string",
                                        "description": "Message content"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "msg"
                                    ]
                                  },
                                  "description": "Additional bank instructions"
                                }
                              },
                              "required": [
                                "depositType",
                                "iban",
                                "name",
                                "bank",
                                "otp"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "IDR_BANK_TRANSFER"
                                  ]
                                },
                                "virtualAccount": {
                                  "type": "string",
                                  "description": "Virtual account number"
                                },
                                "name": {
                                  "type": "string",
                                  "description": "Name of the account holder"
                                },
                                "bank": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankNotes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "number",
                                        "description": "Type of note: -1 for warning, 1 for info"
                                      },
                                      "msg": {
                                        "type": "string",
                                        "description": "Message content"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "msg"
                                    ]
                                  },
                                  "description": "Additional bank instructions"
                                }
                              },
                              "required": [
                                "depositType",
                                "virtualAccount",
                                "name",
                                "bank"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "THAI_QR"
                                  ]
                                },
                                "qrCode": {
                                  "type": "string",
                                  "description": "QR code"
                                },
                                "otp": {
                                  "type": "string",
                                  "description": "OTP for the transaction"
                                },
                                "bankNotes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "number",
                                        "description": "Type of note: -1 for warning, 1 for info"
                                      },
                                      "msg": {
                                        "type": "string",
                                        "description": "Message content"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "msg"
                                    ]
                                  },
                                  "description": "Additional bank instructions"
                                }
                              },
                              "required": [
                                "depositType",
                                "qrCode",
                                "otp"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "VIET_QR"
                                  ]
                                },
                                "qrCode": {
                                  "type": "string",
                                  "description": "QR code"
                                },
                                "otp": {
                                  "type": "string",
                                  "description": "OTP for the transaction"
                                },
                                "bankNotes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "number",
                                        "description": "Type of note: -1 for warning, 1 for info"
                                      },
                                      "msg": {
                                        "type": "string",
                                        "description": "Message content"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "msg"
                                    ]
                                  },
                                  "description": "Additional bank instructions"
                                }
                              },
                              "required": [
                                "depositType",
                                "qrCode",
                                "otp"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "GCASH"
                                  ]
                                },
                                "qrCode": {
                                  "type": "string",
                                  "description": "QR code"
                                },
                                "otp": {
                                  "type": "string",
                                  "description": "OTP for the transaction"
                                },
                                "bankNotes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "number",
                                        "description": "Type of note: -1 for warning, 1 for info"
                                      },
                                      "msg": {
                                        "type": "string",
                                        "description": "Message content"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "msg"
                                    ]
                                  },
                                  "description": "Additional bank instructions"
                                }
                              },
                              "required": [
                                "depositType",
                                "qrCode",
                                "otp"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "ARGENTINA_BANK_TRANSFER"
                                  ]
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Account number"
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "accountNumber"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "ACH_US"
                                  ]
                                },
                                "routingNumber": {
                                  "type": "string",
                                  "description": "US bank ABA routing number"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "US bank account number"
                                },
                                "beneficiaryName": {
                                  "type": "string",
                                  "description": "Beneficiary name on the account"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Name of the bank"
                                },
                                "bankAddress": {
                                  "type": "string",
                                  "description": "Address of the bank"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names (e.g. ACH, Wire)"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount in USD"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Reference code to include in the wire/ACH transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "routingNumber",
                                "accountNumber",
                                "beneficiaryName",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "ACH_PULL"
                                  ]
                                }
                              },
                              "required": [
                                "depositType"
                              ],
                              "description": "Funds are pulled from the holder's own linked US bank account; no transfer instructions apply"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "LOCALBANK"
                                  ],
                                  "description": "Deprecated generic local-bank payin type. Superseded by the corridor-specific deposit types (e.g. SEPA, ACH_US, GBP_BANK_TRANSFER, CLABE/SPEI, PIX, ARGENTINA_BANK_TRANSFER, BANK_DEPOSIT_<CC>). Still returned on some corridors and on historical records, so integrators must continue to handle it. Discover the applicable per-currency method via GET /v1/currencies/{currency}/payin-schema.",
                                  "deprecated": true
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "GBP_BANK_TRANSFER"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "UK bank account number"
                                },
                                "sortCode": {
                                  "type": "string",
                                  "description": "UK sort code"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Name of the bank"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names (e.g. Faster Payments, CHAPS, BACS)"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount in GBP"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Reference code to include in the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "accountHolder",
                                "accountNumber",
                                "sortCode",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_COL"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_CL"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_BO"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_BR"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_NG"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_KE"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_GH"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_ZA"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_TZ"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_UG"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_RW"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_MW"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_ZM"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_BW"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_CD"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_XOF"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_XAF"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_NG"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_KE"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_GH"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_ZA"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_TZ"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_UG"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_RW"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_MW"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_ZM"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_BW"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_CD"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_XOF"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "depositType": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_XAF"
                                  ]
                                },
                                "accountHolder": {
                                  "type": "string",
                                  "description": "Account holder name"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "Local bank account number"
                                },
                                "bankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "bankCountry": {
                                  "type": "string",
                                  "description": "ISO-3166 country code"
                                },
                                "routingCodes": {
                                  "type": "array",
                                  "items": {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                      },
                                      "value": {
                                        "type": "string",
                                        "description": "Routing code value"
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value"
                                    ]
                                  },
                                  "description": "Routing identifiers (e.g. sort code, routing number)"
                                },
                                "schemes": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  },
                                  "description": "Accepted payment scheme names for this account"
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Expected deposit amount"
                                },
                                "referenceCode": {
                                  "type": "string",
                                  "description": "Reference code for the transfer"
                                }
                              },
                              "required": [
                                "depositType",
                                "amount",
                                "referenceCode"
                              ]
                            }
                          ],
                          "description": "Details of the deposit",
                          "examples": [
                            {
                              "accountHolder": "John Doe",
                              "iban": "DE8937XXXXXXXXXXXX3000",
                              "bic": "COBADEFFXXX",
                              "bankName": "Commerzbank",
                              "bankAddress": "Mainzer Landstrasse 151-153",
                              "bankCity": "Frankfurt",
                              "bankZipcode": "60327",
                              "bankCountry": "DE",
                              "amount": 1000,
                              "referenceCode": "ABC123",
                              "depositType": "SEPA"
                            }
                          ]
                        },
                        "depositInfoPending": {
                          "type": "boolean",
                          "description": "True while the payment instructions are still being prepared. Poll this deposit until it is false (or absent) before showing the instructions to the payer."
                        },
                        "complianceHold": {
                          "type": "object",
                          "properties": {
                            "reason": {
                              "type": "string",
                              "enum": [
                                "screening",
                                "fiat_monitoring"
                              ],
                              "description": "Compliance hold reason"
                            }
                          },
                          "required": [
                            "reason"
                          ],
                          "description": "Present while the inbound transfer funding this deposit is held in provider compliance review. The deposit stays Reviewing (amount 0, never credited) until the hold clears (promote to Received) or the transfer is rejected/returned (terminalize)."
                        }
                      },
                      "required": [
                        "depositId",
                        "createdAt",
                        "expectedAmount",
                        "amount",
                        "currency",
                        "fee",
                        "expectedFee",
                        "feeCurrency",
                        "status",
                        "depositInfo"
                      ],
                      "description": "Details of the deposit associated with the order"
                    },
                    "trade": {
                      "type": "object",
                      "properties": {
                        "tradeId": {
                          "type": "string",
                          "description": "ID of the trade",
                          "example": "123e4567-e89b-12d3-a456-426614174000"
                        },
                        "createdAt": {
                          "type": "number",
                          "description": "Creation time of the trade",
                          "example": 1723027132
                        },
                        "pair": {
                          "type": "string",
                          "description": "Asset pair to trade",
                          "example": "BTC/EUR"
                        },
                        "tradeType": {
                          "type": "string",
                          "enum": [
                            "buy",
                            "sell"
                          ],
                          "description": "Type of trade"
                        },
                        "volume": {
                          "type": "number",
                          "minimum": 0,
                          "exclusiveMinimum": true,
                          "description": "Order quantity in lots",
                          "example": 0.5
                        },
                        "price": {
                          "type": "number",
                          "minimum": 0,
                          "exclusiveMinimum": true,
                          "description": "Price at which to place the order based on the pair",
                          "example": 30000
                        },
                        "conversionRate": {
                          "type": "number",
                          "minimum": 0,
                          "exclusiveMinimum": true,
                          "description": "Conversion rate at which to place the order based on the pair",
                          "example": 30000
                        },
                        "fee": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Fee for the trade",
                          "example": 0.1
                        },
                        "feeCurrency": {
                          "type": "string",
                          "description": "Currency of the fee",
                          "example": "EUR"
                        },
                        "userEmail": {
                          "type": "string",
                          "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                          "description": "Email of the user making the trade",
                          "example": "user@example.com"
                        }
                      },
                      "required": [
                        "tradeId",
                        "createdAt",
                        "pair",
                        "tradeType",
                        "volume",
                        "fee",
                        "feeCurrency",
                        "userEmail"
                      ],
                      "description": "Details of the trade associated with the order"
                    },
                    "withdraw": {
                      "type": "object",
                      "properties": {
                        "withdrawalId": {
                          "anyOf": [
                            {
                              "type": "string",
                              "minLength": 12,
                              "maxLength": 12,
                              "pattern": "^[A-Z0-9]{12}$",
                              "examples": [
                                "01CLFXMT67II",
                                "2R7E5Y5KFXP8",
                                "4FWWRE3Y2URM"
                              ]
                            },
                            {
                              "type": "string",
                              "format": "uuid"
                            }
                          ],
                          "description": "ID of the withdrawal"
                        },
                        "userData": {
                          "oneOf": [
                            {
                              "type": "object",
                              "properties": {
                                "userType": {
                                  "type": "string",
                                  "enum": [
                                    "individual"
                                  ]
                                },
                                "firstName": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 50,
                                  "description": "First name of the user making the deposit (or representative for business)",
                                  "examples": [
                                    "John",
                                    "Alice",
                                    "Bob"
                                  ]
                                },
                                "lastName": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 100,
                                  "description": "Last name of the user making the deposit (or representative for business)",
                                  "examples": [
                                    "Doe",
                                    "Smith",
                                    "Johnson"
                                  ]
                                },
                                "userEmail": {
                                  "type": "string",
                                  "maxLength": 254,
                                  "format": "email",
                                  "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                  "description": "Email of the user making the deposit",
                                  "examples": [
                                    "user@virtuabroker.com",
                                    "john.doe@example.com",
                                    "alice@example.com"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "maxLength": 150,
                                  "description": "Address of the user making the deposit",
                                  "examples": [
                                    "123 Main St, Anytown, ES",
                                    "456 Elm St, Anytown, ES",
                                    "789 Oak St, Anytown, ES"
                                  ]
                                },
                                "taxDocumentType": {
                                  "type": "string",
                                  "maxLength": 50,
                                  "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                  "examples": [
                                    "CC",
                                    "NIT",
                                    "CE",
                                    "NIF",
                                    "Other"
                                  ]
                                },
                                "taxId": {
                                  "type": "string",
                                  "maxLength": 30,
                                  "description": "Tax ID of the user making the deposit",
                                  "examples": [
                                    "123-45-6789",
                                    "987-65-4321",
                                    "111-22-3333"
                                  ]
                                },
                                "country": {
                                  "type": "string",
                                  "enum": [
                                    "US",
                                    "CA",
                                    "GB",
                                    "DE",
                                    "FR",
                                    "AU",
                                    "JP",
                                    "KR",
                                    "SE",
                                    "NO",
                                    "DK",
                                    "FI",
                                    "NL",
                                    "BE",
                                    "CH",
                                    "AT",
                                    "NZ",
                                    "SG",
                                    "IE",
                                    "LU",
                                    "PT",
                                    "ES",
                                    "IT",
                                    "GR",
                                    "CZ",
                                    "PL",
                                    "HU",
                                    "SK",
                                    "SI",
                                    "EE",
                                    "LT",
                                    "LV",
                                    "IS",
                                    "MT",
                                    "CY",
                                    "HR",
                                    "RO",
                                    "BG",
                                    "BR",
                                    "AR",
                                    "CL",
                                    "MX",
                                    "CO",
                                    "PE",
                                    "PA",
                                    "UY",
                                    "BO",
                                    "ZA",
                                    "NG",
                                    "KE",
                                    "GH",
                                    "TZ",
                                    "UG",
                                    "RW",
                                    "MW",
                                    "ZM",
                                    "BW",
                                    "CD",
                                    "CI",
                                    "CM",
                                    "IL",
                                    "AE",
                                    "QA",
                                    "SA",
                                    "OM",
                                    "KW",
                                    "BH",
                                    "MY",
                                    "PH",
                                    "TH",
                                    "VN",
                                    "ID",
                                    "IN",
                                    "LK",
                                    "NP",
                                    "BD",
                                    "PK",
                                    "EG",
                                    "MA",
                                    "DZ",
                                    "TN",
                                    "JO",
                                    "LB",
                                    "TR",
                                    "KH",
                                    "MM",
                                    "LA",
                                    "EN",
                                    "BT",
                                    "VE",
                                    "TW",
                                    "HK",
                                    "CN"
                                  ],
                                  "description": "Country code of the user making the deposit",
                                  "examples": [
                                    "ES",
                                    "US",
                                    "GB"
                                  ]
                                },
                                "state": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 100,
                                  "description": "State of the user making the deposit",
                                  "examples": [
                                    "Madrid",
                                    "New York",
                                    "London"
                                  ]
                                },
                                "postalCode": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 30,
                                  "description": "Postal code of the user making the deposit",
                                  "examples": [
                                    "12345",
                                    "67890",
                                    "abcde"
                                  ]
                                },
                                "city": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 100,
                                  "description": "City of the user making the deposit",
                                  "examples": [
                                    "Madrid",
                                    "New York",
                                    "London"
                                  ]
                                },
                                "dob": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 30,
                                  "description": "Date of birth of the user making the deposit",
                                  "examples": [
                                    "1990-01-01",
                                    "1995-05-15",
                                    "1988-12-31"
                                  ]
                                },
                                "phoneNumber": {
                                  "type": "string",
                                  "maxLength": 30,
                                  "description": "Phone number of the user making the deposit",
                                  "examples": [
                                    "+447700900123",
                                    "+447700900456",
                                    "+447700900789"
                                  ]
                                },
                                "kycId": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 300,
                                  "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                  "examples": [
                                    "kyc-12345",
                                    "kyc-67890",
                                    "kyc-abcde"
                                  ]
                                },
                                "activity": {
                                  "type": "string",
                                  "description": "Activity of the user making the deposit",
                                  "examples": [
                                    "worker",
                                    "business",
                                    "student"
                                  ]
                                }
                              },
                              "required": [
                                "userType",
                                "firstName",
                                "userEmail",
                                "country"
                              ]
                            },
                            {
                              "type": "object",
                              "properties": {
                                "userType": {
                                  "type": "string",
                                  "enum": [
                                    "business"
                                  ]
                                },
                                "businessName": {
                                  "type": "string",
                                  "maxLength": 150,
                                  "description": "Business name (required when userType is business)",
                                  "examples": [
                                    "Acme Corp",
                                    "Tech Solutions Inc",
                                    "Global Services Ltd"
                                  ]
                                },
                                "firstName": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 50,
                                  "description": "First name of the user making the deposit (or representative for business)",
                                  "examples": [
                                    "John",
                                    "Alice",
                                    "Bob"
                                  ]
                                },
                                "userEmail": {
                                  "type": "string",
                                  "maxLength": 254,
                                  "format": "email",
                                  "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                  "description": "Email of the user making the deposit",
                                  "examples": [
                                    "user@virtuabroker.com",
                                    "john.doe@example.com",
                                    "alice@example.com"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "maxLength": 150,
                                  "description": "Address of the user making the deposit",
                                  "examples": [
                                    "123 Main St, Anytown, ES",
                                    "456 Elm St, Anytown, ES",
                                    "789 Oak St, Anytown, ES"
                                  ]
                                },
                                "taxDocumentType": {
                                  "type": "string",
                                  "maxLength": 50,
                                  "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                  "examples": [
                                    "CC",
                                    "NIT",
                                    "CE",
                                    "NIF",
                                    "Other"
                                  ]
                                },
                                "taxId": {
                                  "type": "string",
                                  "maxLength": 30,
                                  "description": "Tax ID of the user making the deposit",
                                  "examples": [
                                    "123-45-6789",
                                    "987-65-4321",
                                    "111-22-3333"
                                  ]
                                },
                                "country": {
                                  "type": "string",
                                  "enum": [
                                    "US",
                                    "CA",
                                    "GB",
                                    "DE",
                                    "FR",
                                    "AU",
                                    "JP",
                                    "KR",
                                    "SE",
                                    "NO",
                                    "DK",
                                    "FI",
                                    "NL",
                                    "BE",
                                    "CH",
                                    "AT",
                                    "NZ",
                                    "SG",
                                    "IE",
                                    "LU",
                                    "PT",
                                    "ES",
                                    "IT",
                                    "GR",
                                    "CZ",
                                    "PL",
                                    "HU",
                                    "SK",
                                    "SI",
                                    "EE",
                                    "LT",
                                    "LV",
                                    "IS",
                                    "MT",
                                    "CY",
                                    "HR",
                                    "RO",
                                    "BG",
                                    "BR",
                                    "AR",
                                    "CL",
                                    "MX",
                                    "CO",
                                    "PE",
                                    "PA",
                                    "UY",
                                    "BO",
                                    "ZA",
                                    "NG",
                                    "KE",
                                    "GH",
                                    "TZ",
                                    "UG",
                                    "RW",
                                    "MW",
                                    "ZM",
                                    "BW",
                                    "CD",
                                    "CI",
                                    "CM",
                                    "IL",
                                    "AE",
                                    "QA",
                                    "SA",
                                    "OM",
                                    "KW",
                                    "BH",
                                    "MY",
                                    "PH",
                                    "TH",
                                    "VN",
                                    "ID",
                                    "IN",
                                    "LK",
                                    "NP",
                                    "BD",
                                    "PK",
                                    "EG",
                                    "MA",
                                    "DZ",
                                    "TN",
                                    "JO",
                                    "LB",
                                    "TR",
                                    "KH",
                                    "MM",
                                    "LA",
                                    "EN",
                                    "BT",
                                    "VE",
                                    "TW",
                                    "HK",
                                    "CN"
                                  ],
                                  "description": "Country code of the user making the deposit",
                                  "examples": [
                                    "ES",
                                    "US",
                                    "GB"
                                  ]
                                },
                                "state": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 100,
                                  "description": "State of the user making the deposit",
                                  "examples": [
                                    "Madrid",
                                    "New York",
                                    "London"
                                  ]
                                },
                                "postalCode": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 30,
                                  "description": "Postal code of the user making the deposit",
                                  "examples": [
                                    "12345",
                                    "67890",
                                    "abcde"
                                  ]
                                },
                                "city": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 100,
                                  "description": "City of the user making the deposit",
                                  "examples": [
                                    "Madrid",
                                    "New York",
                                    "London"
                                  ]
                                },
                                "dob": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 30,
                                  "description": "Date of birth of the user making the deposit",
                                  "examples": [
                                    "1990-01-01",
                                    "1995-05-15",
                                    "1988-12-31"
                                  ]
                                },
                                "phoneNumber": {
                                  "type": "string",
                                  "maxLength": 30,
                                  "description": "Phone number of the user making the deposit",
                                  "examples": [
                                    "+447700900123",
                                    "+447700900456",
                                    "+447700900789"
                                  ]
                                },
                                "kycId": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 300,
                                  "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                  "examples": [
                                    "kyc-12345",
                                    "kyc-67890",
                                    "kyc-abcde"
                                  ]
                                },
                                "activity": {
                                  "type": "string",
                                  "description": "Activity of the user making the deposit",
                                  "examples": [
                                    "worker",
                                    "business",
                                    "student"
                                  ]
                                }
                              },
                              "required": [
                                "userType",
                                "businessName",
                                "firstName",
                                "userEmail",
                                "country"
                              ]
                            }
                          ],
                          "description": "User data for the withdrawal"
                        },
                        "createdAt": {
                          "type": "number",
                          "description": "Creation time of the withdrawal",
                          "example": 1723027132
                        },
                        "updatedAt": {
                          "type": "number",
                          "description": "Last update time of the withdrawal",
                          "example": 1723027132
                        },
                        "userEmail": {
                          "type": "string",
                          "format": "email",
                          "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                          "description": "Email of the user making the request",
                          "example": "user@example.com"
                        },
                        "amount": {
                          "type": "number",
                          "description": "Amount to be withdrawn. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
                          "example": 1000
                        },
                        "currency": {
                          "type": "string",
                          "description": "Currency of the withdrawal",
                          "example": "EUR"
                        },
                        "fee": {
                          "type": "number",
                          "description": "Fee for the withdrawal. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
                          "example": 10
                        },
                        "feeCurrency": {
                          "type": "string",
                          "description": "Currency of the fee",
                          "example": "EUR"
                        },
                        "destinationTransferData": {
                          "oneOf": [
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BALANCE"
                                  ]
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "Balance transfer details",
                              "title": "Balance"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "iban": {
                                  "type": "string",
                                  "description": "IBAN number"
                                },
                                "bic": {
                                  "type": "string",
                                  "description": "BIC number (optional)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "Country code"
                                },
                                "accountType": {
                                  "type": "string",
                                  "enum": [
                                    "PERSONAL",
                                    "BUSINESS"
                                  ],
                                  "default": "PERSONAL",
                                  "description": "Account type (optional)"
                                },
                                "city": {
                                  "type": "string",
                                  "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                                },
                                "postalCode": {
                                  "type": "string",
                                  "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "SEPA"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "iban",
                                "country",
                                "type"
                              ],
                              "description": "SEPA transfer details",
                              "title": "SEPA"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "UK bank account number"
                                },
                                "sortCode": {
                                  "type": "string",
                                  "description": "UK sort code"
                                },
                                "country": {
                                  "type": "string",
                                  "enum": [
                                    "GB"
                                  ],
                                  "default": "GB",
                                  "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                                },
                                "accountType": {
                                  "type": "string",
                                  "enum": [
                                    "PERSONAL",
                                    "BUSINESS"
                                  ],
                                  "default": "PERSONAL",
                                  "description": "Account type (optional)"
                                },
                                "city": {
                                  "type": "string",
                                  "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                                },
                                "postalCode": {
                                  "type": "string",
                                  "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "GBP_BANK_TRANSFER"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "accountNumber",
                                "sortCode",
                                "type"
                              ],
                              "description": "GBP domestic bank transfer details",
                              "title": "BankDepositGB"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "US bank account number"
                                },
                                "routingNumber": {
                                  "type": "string",
                                  "description": "US ABA routing number"
                                },
                                "country": {
                                  "type": "string",
                                  "enum": [
                                    "US"
                                  ],
                                  "default": "US",
                                  "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                                },
                                "accountType": {
                                  "type": "string",
                                  "enum": [
                                    "PERSONAL",
                                    "BUSINESS"
                                  ],
                                  "default": "PERSONAL",
                                  "description": "Account type (optional)"
                                },
                                "bankAccountType": {
                                  "type": "string",
                                  "enum": [
                                    "CHECKING",
                                    "SAVINGS"
                                  ],
                                  "default": "CHECKING",
                                  "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                                },
                                "city": {
                                  "type": "string",
                                  "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                                },
                                "postalCode": {
                                  "type": "string",
                                  "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                                },
                                "state": {
                                  "type": "string",
                                  "pattern": "^[A-Z]{2}$",
                                  "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "ACH_US"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "accountNumber",
                                "routingNumber",
                                "state",
                                "type"
                              ],
                              "description": "USD ACH transfer details",
                              "title": "AchUS"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "linkedBankAccount"
                                  ]
                                },
                                "accountLinkId": {
                                  "type": "string",
                                  "pattern": "^alnk_[0-9a-f]{24}$",
                                  "description": "Identifier of one of the account holder own linked bank accounts",
                                  "examples": [
                                    "alnk_0123456789abcdef01234567"
                                  ]
                                }
                              },
                              "required": [
                                "type",
                                "accountLinkId"
                              ],
                              "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                              "title": "LinkedBankAccount",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "ETH"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "ETH destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "ETH"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MATIC"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "MATIC destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "MATIC"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "SOL"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "SOL destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "\\S"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "\\S"
                                    }
                                  }
                                }
                              ],
                              "title": "SOL"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "TRON"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "TRON destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "\\S"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "\\S"
                                    }
                                  }
                                }
                              ],
                              "title": "TRON"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "CELO"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "CELO destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "CELO"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BTC"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "BTC destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "\\S"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "\\S"
                                    }
                                  }
                                }
                              ],
                              "title": "BTC"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "SOLANA"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "SOLANA destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "\\S"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "\\S"
                                    }
                                  }
                                }
                              ],
                              "title": "SOLANA"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "XRP"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "XRP destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "\\S"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "\\S"
                                    }
                                  }
                                }
                              ],
                              "title": "XRP"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "CARDANO"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "CARDANO destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "\\S"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "\\S"
                                    }
                                  }
                                }
                              ],
                              "title": "CARDANO"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BSC"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "BSC destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "BSC"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "ARBITRUM"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "ARBITRUM destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "ARBITRUM"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "OPTIMISM"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "OPTIMISM destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "OPTIMISM"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "AVALANCHE"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "AVALANCHE destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "AVALANCHE"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BASE"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "BASE destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "BASE"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_COL"
                                  ]
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "Recipient ID document number. Required when creating or updating a destination."
                                },
                                "destinationDocumentType": {
                                  "type": "string",
                                  "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                              "title": "Bank Deposit COL"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "brebKey": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Bre-B key (llave) that identifies the recipient account"
                                },
                                "email": {
                                  "type": "string",
                                  "description": "Recipient email (optional contact for the Bre-B rail)"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Recipient phone number (optional contact for the Bre-B rail)"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BRE_B_COP"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "brebKey",
                                "type"
                              ],
                              "description": "Colombian Bre-B payout details",
                              "title": "Bre-B COP"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "pattern": "^\\d{4}$",
                                  "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                                },
                                "destinationBankAccountNumber": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Recipient bank account number"
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                                },
                                "destinationDocumentType": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Recipient ID document number"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "ACH_COP"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankCode",
                                "destinationBankAccountNumber",
                                "destinationBankAccountType",
                                "destinationDocumentType",
                                "destinationTaxId",
                                "type"
                              ],
                              "description": "Colombian ACH payout details",
                              "title": "ACH COP"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (unused for TWD — no network discovery)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "minLength": 2,
                                  "description": "Bank name (required — TWD payouts run over SWIFT)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_TW"
                                  ]
                                },
                                "destinationBankBranch": {
                                  "type": "string",
                                  "minLength": 2,
                                  "description": "Bank branch (required — TWD payouts run over SWIFT)"
                                },
                                "bic": {
                                  "type": "string",
                                  "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                                  "description": "SWIFT BIC code (required for TWD payouts)"
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "description": "Type of bank account (legacy, optional)"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "Tax ID of the recipient (legacy, optional)"
                                },
                                "destinationDocumentType": {
                                  "type": "string",
                                  "description": "Document type of the recipient (legacy, optional)"
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "destinationBankName",
                                "type",
                                "destinationBankBranch",
                                "bic"
                              ],
                              "description": "Taiwan bank deposit details (SWIFT payout)",
                              "title": "Bank Deposit TW"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "description": "Bank code"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationBankBranch": {
                                  "type": "string",
                                  "description": "Bank branch"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "Tax ID of the recipient"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_BR"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankCode",
                                "destinationBankAccount",
                                "destinationBankBranch",
                                "destinationTaxId",
                                "type"
                              ],
                              "description": "Brazilian bank deposit details",
                              "title": "Bank Deposit BR"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPixCode": {
                                  "type": "string",
                                  "description": "PIX code"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "Tax ID of the recipient"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "PIX_BR"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPixCode",
                                "destinationTaxId",
                                "type"
                              ],
                              "description": "Brazilian PIX details",
                              "title": "PIX BR"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccountNumber": {
                                  "type": "string",
                                  "description": "Bank account number"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Name of the bank"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                                  "description": "Tax ID of the recipient"
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "description": "Type of bank account"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_VEN"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccountNumber",
                                "destinationBankName",
                                "destinationTaxId",
                                "destinationBankAccountType",
                                "type"
                              ],
                              "description": "Venezuelan bank deposit details",
                              "title": "Bank Deposit VEN"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "description": "Bank code"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                                  "description": "Tax ID of the recipient"
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "description": "Type of bank account"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "PHONE_DEPOSIT_VEN"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankCode",
                                "destinationPhoneNumber",
                                "destinationTaxId",
                                "destinationBankAccountType",
                                "type"
                              ],
                              "description": "Venezuelan phone deposit details",
                              "title": "Phone Deposit VEN"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationIFSC": {
                                  "type": "string",
                                  "description": "IFSC code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_IN"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Bank Deposit IN",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationIFSC": {
                                  "type": "string",
                                  "description": "IFSC code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "IMPS"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "IMPS",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationIFSC": {
                                  "type": "string",
                                  "description": "IFSC code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "THAI_QR"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Thai QR",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationIFSC": {
                                  "type": "string",
                                  "description": "IFSC code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "VIET_QR"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Viet QR",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationIFSC": {
                                  "type": "string",
                                  "description": "IFSC code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "GCASH"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "GCash",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "Tax ID"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_PAYMENT_IN"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "destinationTaxId",
                                "type"
                              ],
                              "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Mobile Payment IN",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "description": "Bank code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_VN"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "destinationBankCode",
                                "type"
                              ],
                              "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Bank Deposit VN",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "bic": {
                                  "type": "string",
                                  "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "destinationAddress": {
                                  "type": "string",
                                  "description": "Address line 1 of the recipient"
                                },
                                "destinationCity": {
                                  "type": "string",
                                  "description": "Recipient city (defaults to Hong Kong)"
                                },
                                "accountHolderName": {
                                  "type": "string",
                                  "description": "Bank account holder name if different from payee"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_HK"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "bic",
                                "destinationBankName",
                                "destinationAddress",
                                "type"
                              ],
                              "description": "Hong Kong bank deposit details (HKD bank corridor)",
                              "title": "Bank Deposit HK"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "pattern": "^\\d+$",
                                  "description": "CNAPS / bank institution code (numeric, variable length)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "destinationAddress": {
                                  "type": "string",
                                  "description": "Address line 1 of the recipient"
                                },
                                "destinationCity": {
                                  "type": "string",
                                  "description": "Recipient city"
                                },
                                "destinationState": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                                },
                                "destinationPostcode": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                                },
                                "destinationPhone": {
                                  "type": "string",
                                  "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                                },
                                "accountHolderName": {
                                  "type": "string",
                                  "description": "Bank account holder name if different from payee"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_CN"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "destinationBankCode",
                                "destinationBankName",
                                "destinationAddress",
                                "destinationCity",
                                "destinationState",
                                "destinationPostcode",
                                "type"
                              ],
                              "description": "China mainland bank deposit details (CNY bank corridor)",
                              "title": "Bank Deposit CN"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_AR"
                                  ]
                                },
                                "destinationCBU": {
                                  "type": "string",
                                  "description": "CBU — 22-digit bank account key (legacy, optional)"
                                },
                                "destinationCVU": {
                                  "type": "string",
                                  "description": "CVU — 22-digit virtual account key (legacy, optional)"
                                },
                                "destinationAlias": {
                                  "type": "string",
                                  "description": "Account alias (legacy, optional)"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                                },
                                "destinationDocumentType": {
                                  "type": "string",
                                  "description": "Document type of the recipient (legacy, optional)"
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Argentinian bank deposit details",
                              "title": "Bank Deposit AR"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Recipient bank name (required for Chilean bank payouts)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_CL"
                                  ]
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                                },
                                "destinationDocumentType": {
                                  "type": "string",
                                  "description": "Document type of the recipient (legacy, optional)"
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "destinationBankName",
                                "type",
                                "destinationBankAccountType",
                                "destinationTaxId"
                              ],
                              "description": "Chilean bank deposit details",
                              "title": "Bank Deposit CL"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "minLength": 2,
                                  "maxLength": 30,
                                  "description": "Recipient name (required, 2–30 characters)"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 11,
                                  "description": "Bank account number (max 11 digits for Bolivian accounts)"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (unused for BOB — no network discovery)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "maxLength": 20,
                                  "description": "Bank name (optional, max 20 characters)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_BO"
                                  ]
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 15,
                                  "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type",
                                "destinationTaxId"
                              ],
                              "description": "Bolivian bank deposit details",
                              "title": "Bank Deposit BO"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_PE"
                                  ]
                                },
                                "destinationCCI": {
                                  "type": "string",
                                  "description": "CCI — 20-digit interbank account code (legacy, optional)"
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "description": "Account type (corriente/ahorro) (legacy, optional)"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                                },
                                "destinationDocumentType": {
                                  "type": "string",
                                  "description": "Document type of the recipient (legacy, optional)"
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "destinationNetworkId",
                                "type"
                              ],
                              "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Bank Deposit PE",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "pattern": "^\\d{3}$",
                                  "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                                },
                                "destinationBankAccountNumber": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 20,
                                  "description": "Recipient bank account number (max 20)"
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "enum": [
                                    "CORRIENTE",
                                    "AHORROS",
                                    "PHONE"
                                  ],
                                  "description": "Bank account type"
                                },
                                "destinationCCI": {
                                  "type": "string",
                                  "pattern": "^\\d{1,20}$",
                                  "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                                },
                                "destinationDocumentType": {
                                  "type": "string",
                                  "enum": [
                                    "CC",
                                    "CE",
                                    "RUC",
                                    "PAS",
                                    "PAR",
                                    "LMI",
                                    "OTHER"
                                  ],
                                  "description": "Recipient identification type"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 50,
                                  "description": "Recipient identification number (max 50)"
                                },
                                "email": {
                                  "type": "string",
                                  "pattern": "^.+@.+\\..+$",
                                  "description": "Recipient email (required for PEN payouts)"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "pattern": "^\\d{1,9}$",
                                  "description": "Recipient phone number (required, max 9 digits)"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_PEN"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankCode",
                                "destinationBankAccountNumber",
                                "destinationBankAccountType",
                                "destinationCCI",
                                "destinationDocumentType",
                                "destinationTaxId",
                                "email",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Peruvian bank deposit details (bank-code payout corridor).",
                              "title": "Bank Deposit PEN"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_NG"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Nigeria bank deposit details",
                              "title": "Bank Deposit NG"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_KE"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Kenya bank deposit details",
                              "title": "Bank Deposit KE"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_GH"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Bank Deposit GH",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_ZA"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "South Africa bank deposit details",
                              "title": "Bank Deposit ZA"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_TZ"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Tanzania bank deposit details",
                              "title": "Bank Deposit TZ"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_UG"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Uganda bank deposit details",
                              "title": "Bank Deposit UG"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_RW"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Rwanda bank deposit details",
                              "title": "Bank Deposit RW"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_MW"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Malawi bank deposit details",
                              "title": "Bank Deposit MW"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_ZM"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Zambia bank deposit details",
                              "title": "Bank Deposit ZM"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_BW"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Botswana bank deposit details",
                              "title": "Bank Deposit BW"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_CD"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Bank Deposit CD",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_XOF"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "West African CFA bank deposit details",
                              "title": "Bank Deposit XOF"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_XAF"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Central African CFA bank deposit details",
                              "title": "Bank Deposit XAF"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_NG"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Nigeria mobile money details",
                              "title": "Mobile Money NG"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_KE"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Kenya mobile money details",
                              "title": "Mobile Money KE"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_GH"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Mobile Money GH",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_ZA"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "South Africa mobile money details",
                              "title": "Mobile Money ZA"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_TZ"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Tanzania mobile money details",
                              "title": "Mobile Money TZ"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_UG"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Uganda mobile money details",
                              "title": "Mobile Money UG"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_RW"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Rwanda mobile money details",
                              "title": "Mobile Money RW"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_MW"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Malawi mobile money details",
                              "title": "Mobile Money MW"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_ZM"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Zambia mobile money details",
                              "title": "Mobile Money ZM"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_BW"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Botswana mobile money details",
                              "title": "Mobile Money BW"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_CD"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Mobile Money CD",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_XOF"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "West African CFA mobile money details",
                              "title": "Mobile Money XOF"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_XAF"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Central African CFA mobile money details",
                              "title": "Mobile Money XAF"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "description": "Bank code"
                                },
                                "destinationBankAccountNumber": {
                                  "type": "string",
                                  "description": "Bank account number (18-digit CLABE)"
                                },
                                "numericReference": {
                                  "type": "string",
                                  "description": "Numeric reference"
                                },
                                "notesReference": {
                                  "type": "string",
                                  "description": "Notes reference"
                                },
                                "destinationClabe": {
                                  "type": "string",
                                  "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_MX"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccountNumber",
                                "type"
                              ],
                              "description": "Mexican bank deposit details",
                              "title": "Bank Deposit MX"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPseNumber": {
                                  "type": "string",
                                  "description": "PSE number"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "PSE"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPseNumber",
                                "type"
                              ],
                              "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "PSE",
                              "deprecated": true
                            }
                          ],
                          "description": "The details required for the end user destination transfer method."
                        },
                        "status": {
                          "anyOf": [
                            {
                              "type": "string",
                              "enum": [
                                "Pending",
                                "Processing",
                                "Success",
                                "Failed",
                                "Canceled",
                                "Reviewing"
                              ],
                              "description": "Common status values that are shared across all operation types",
                              "examples": [
                                "Pending",
                                "Processing",
                                "Success",
                                "Failed",
                                "Canceled",
                                "Reviewing"
                              ]
                            },
                            {
                              "type": "string",
                              "enum": [
                                "PendingCancel",
                                "PendingWithdrawal",
                                "PendingVerification",
                                "Pending2FA",
                                "Compliance",
                                "Accepted",
                                "Approved",
                                "Rejected",
                                "Review"
                              ]
                            }
                          ],
                          "description": "Status of the withdrawal",
                          "examples": [
                            "Pending",
                            "Pending2FA",
                            "Compliance",
                            "Accepted",
                            "Approved",
                            "Success",
                            "Failed",
                            "Review",
                            "Rejected"
                          ]
                        },
                        "withdrawalInfo": {
                          "oneOf": [
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BALANCE"
                                  ]
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "Balance transfer details",
                              "title": "Balance"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "iban": {
                                  "type": "string",
                                  "description": "IBAN number"
                                },
                                "bic": {
                                  "type": "string",
                                  "description": "BIC number (optional)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "Country code"
                                },
                                "accountType": {
                                  "type": "string",
                                  "enum": [
                                    "PERSONAL",
                                    "BUSINESS"
                                  ],
                                  "default": "PERSONAL",
                                  "description": "Account type (optional)"
                                },
                                "city": {
                                  "type": "string",
                                  "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                                },
                                "postalCode": {
                                  "type": "string",
                                  "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "SEPA"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "iban",
                                "country",
                                "type"
                              ],
                              "description": "SEPA transfer details",
                              "title": "SEPA"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "UK bank account number"
                                },
                                "sortCode": {
                                  "type": "string",
                                  "description": "UK sort code"
                                },
                                "country": {
                                  "type": "string",
                                  "enum": [
                                    "GB"
                                  ],
                                  "default": "GB",
                                  "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                                },
                                "accountType": {
                                  "type": "string",
                                  "enum": [
                                    "PERSONAL",
                                    "BUSINESS"
                                  ],
                                  "default": "PERSONAL",
                                  "description": "Account type (optional)"
                                },
                                "city": {
                                  "type": "string",
                                  "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                                },
                                "postalCode": {
                                  "type": "string",
                                  "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "GBP_BANK_TRANSFER"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "accountNumber",
                                "sortCode",
                                "type"
                              ],
                              "description": "GBP domestic bank transfer details",
                              "title": "BankDepositGB"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "accountNumber": {
                                  "type": "string",
                                  "description": "US bank account number"
                                },
                                "routingNumber": {
                                  "type": "string",
                                  "description": "US ABA routing number"
                                },
                                "country": {
                                  "type": "string",
                                  "enum": [
                                    "US"
                                  ],
                                  "default": "US",
                                  "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                                },
                                "accountType": {
                                  "type": "string",
                                  "enum": [
                                    "PERSONAL",
                                    "BUSINESS"
                                  ],
                                  "default": "PERSONAL",
                                  "description": "Account type (optional)"
                                },
                                "bankAccountType": {
                                  "type": "string",
                                  "enum": [
                                    "CHECKING",
                                    "SAVINGS"
                                  ],
                                  "default": "CHECKING",
                                  "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                                },
                                "city": {
                                  "type": "string",
                                  "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                                },
                                "postalCode": {
                                  "type": "string",
                                  "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                                },
                                "state": {
                                  "type": "string",
                                  "pattern": "^[A-Z]{2}$",
                                  "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "ACH_US"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "accountNumber",
                                "routingNumber",
                                "state",
                                "type"
                              ],
                              "description": "USD ACH transfer details",
                              "title": "AchUS"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "linkedBankAccount"
                                  ]
                                },
                                "accountLinkId": {
                                  "type": "string",
                                  "pattern": "^alnk_[0-9a-f]{24}$",
                                  "description": "Identifier of one of the account holder own linked bank accounts",
                                  "examples": [
                                    "alnk_0123456789abcdef01234567"
                                  ]
                                }
                              },
                              "required": [
                                "type",
                                "accountLinkId"
                              ],
                              "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                              "title": "LinkedBankAccount",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "ETH"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "ETH destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "ETH"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MATIC"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "MATIC destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "MATIC"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "SOL"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "SOL destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "\\S"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "\\S"
                                    }
                                  }
                                }
                              ],
                              "title": "SOL"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "TRON"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "TRON destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "\\S"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "\\S"
                                    }
                                  }
                                }
                              ],
                              "title": "TRON"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "CELO"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "CELO destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "CELO"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BTC"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "BTC destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "\\S"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "\\S"
                                    }
                                  }
                                }
                              ],
                              "title": "BTC"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "SOLANA"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "SOLANA destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "\\S"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "\\S"
                                    }
                                  }
                                }
                              ],
                              "title": "SOLANA"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "XRP"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "XRP destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "\\S"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "\\S"
                                    }
                                  }
                                }
                              ],
                              "title": "XRP"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "CARDANO"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "CARDANO destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "\\S"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "\\S"
                                    }
                                  }
                                }
                              ],
                              "title": "CARDANO"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BSC"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "BSC destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "BSC"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "ARBITRUM"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "ARBITRUM destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "ARBITRUM"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "OPTIMISM"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "OPTIMISM destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "OPTIMISM"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "AVALANCHE"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "AVALANCHE destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "AVALANCHE"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BASE"
                                  ]
                                },
                                "address": {
                                  "type": "string",
                                  "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                },
                                "memo": {
                                  "type": "string",
                                  "description": "Memo for the wallet, when the chain uses one"
                                },
                                "txId": {
                                  "type": "string",
                                  "description": "Blockchain transaction ID"
                                },
                                "txUrlScan": {
                                  "type": "string",
                                  "description": "Blockchain explorer URL for the transaction"
                                },
                                "destinationWalletAddress": {
                                  "type": "string",
                                  "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                },
                                "destinationWalletMemo": {
                                  "type": "string",
                                  "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                },
                                "destinationNetwork": {
                                  "type": "string",
                                  "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                },
                                "destinationCurrencySymbol": {
                                  "type": "string",
                                  "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                }
                              },
                              "required": [
                                "type"
                              ],
                              "description": "BASE destination details",
                              "anyOf": [
                                {
                                  "required": [
                                    "address"
                                  ],
                                  "properties": {
                                    "address": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                },
                                {
                                  "required": [
                                    "destinationWalletAddress"
                                  ],
                                  "properties": {
                                    "destinationWalletAddress": {
                                      "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                    }
                                  }
                                }
                              ],
                              "title": "BASE"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_COL"
                                  ]
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "Recipient ID document number. Required when creating or updating a destination."
                                },
                                "destinationDocumentType": {
                                  "type": "string",
                                  "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                              "title": "Bank Deposit COL"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "brebKey": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Bre-B key (llave) that identifies the recipient account"
                                },
                                "email": {
                                  "type": "string",
                                  "description": "Recipient email (optional contact for the Bre-B rail)"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Recipient phone number (optional contact for the Bre-B rail)"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BRE_B_COP"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "brebKey",
                                "type"
                              ],
                              "description": "Colombian Bre-B payout details",
                              "title": "Bre-B COP"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "pattern": "^\\d{4}$",
                                  "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                                },
                                "destinationBankAccountNumber": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Recipient bank account number"
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                                },
                                "destinationDocumentType": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Recipient ID document number"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "ACH_COP"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankCode",
                                "destinationBankAccountNumber",
                                "destinationBankAccountType",
                                "destinationDocumentType",
                                "destinationTaxId",
                                "type"
                              ],
                              "description": "Colombian ACH payout details",
                              "title": "ACH COP"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (unused for TWD — no network discovery)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "minLength": 2,
                                  "description": "Bank name (required — TWD payouts run over SWIFT)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_TW"
                                  ]
                                },
                                "destinationBankBranch": {
                                  "type": "string",
                                  "minLength": 2,
                                  "description": "Bank branch (required — TWD payouts run over SWIFT)"
                                },
                                "bic": {
                                  "type": "string",
                                  "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                                  "description": "SWIFT BIC code (required for TWD payouts)"
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "description": "Type of bank account (legacy, optional)"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "Tax ID of the recipient (legacy, optional)"
                                },
                                "destinationDocumentType": {
                                  "type": "string",
                                  "description": "Document type of the recipient (legacy, optional)"
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "destinationBankName",
                                "type",
                                "destinationBankBranch",
                                "bic"
                              ],
                              "description": "Taiwan bank deposit details (SWIFT payout)",
                              "title": "Bank Deposit TW"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "description": "Bank code"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationBankBranch": {
                                  "type": "string",
                                  "description": "Bank branch"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "Tax ID of the recipient"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_BR"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankCode",
                                "destinationBankAccount",
                                "destinationBankBranch",
                                "destinationTaxId",
                                "type"
                              ],
                              "description": "Brazilian bank deposit details",
                              "title": "Bank Deposit BR"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPixCode": {
                                  "type": "string",
                                  "description": "PIX code"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "Tax ID of the recipient"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "PIX_BR"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPixCode",
                                "destinationTaxId",
                                "type"
                              ],
                              "description": "Brazilian PIX details",
                              "title": "PIX BR"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccountNumber": {
                                  "type": "string",
                                  "description": "Bank account number"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Name of the bank"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                                  "description": "Tax ID of the recipient"
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "description": "Type of bank account"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_VEN"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccountNumber",
                                "destinationBankName",
                                "destinationTaxId",
                                "destinationBankAccountType",
                                "type"
                              ],
                              "description": "Venezuelan bank deposit details",
                              "title": "Bank Deposit VEN"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "description": "Bank code"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                                  "description": "Tax ID of the recipient"
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "description": "Type of bank account"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "PHONE_DEPOSIT_VEN"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankCode",
                                "destinationPhoneNumber",
                                "destinationTaxId",
                                "destinationBankAccountType",
                                "type"
                              ],
                              "description": "Venezuelan phone deposit details",
                              "title": "Phone Deposit VEN"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationIFSC": {
                                  "type": "string",
                                  "description": "IFSC code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_IN"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Bank Deposit IN",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationIFSC": {
                                  "type": "string",
                                  "description": "IFSC code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "IMPS"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "IMPS",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationIFSC": {
                                  "type": "string",
                                  "description": "IFSC code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "THAI_QR"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Thai QR",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationIFSC": {
                                  "type": "string",
                                  "description": "IFSC code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "VIET_QR"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Viet QR",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationIFSC": {
                                  "type": "string",
                                  "description": "IFSC code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "GCASH"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "GCash",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "Tax ID"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_PAYMENT_IN"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "destinationTaxId",
                                "type"
                              ],
                              "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Mobile Payment IN",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "description": "Bank code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_VN"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "destinationBankCode",
                                "type"
                              ],
                              "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Bank Deposit VN",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "bic": {
                                  "type": "string",
                                  "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "destinationAddress": {
                                  "type": "string",
                                  "description": "Address line 1 of the recipient"
                                },
                                "destinationCity": {
                                  "type": "string",
                                  "description": "Recipient city (defaults to Hong Kong)"
                                },
                                "accountHolderName": {
                                  "type": "string",
                                  "description": "Bank account holder name if different from payee"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_HK"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "bic",
                                "destinationBankName",
                                "destinationAddress",
                                "type"
                              ],
                              "description": "Hong Kong bank deposit details (HKD bank corridor)",
                              "title": "Bank Deposit HK"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "pattern": "^\\d+$",
                                  "description": "CNAPS / bank institution code (numeric, variable length)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name"
                                },
                                "destinationAddress": {
                                  "type": "string",
                                  "description": "Address line 1 of the recipient"
                                },
                                "destinationCity": {
                                  "type": "string",
                                  "description": "Recipient city"
                                },
                                "destinationState": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                                },
                                "destinationPostcode": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                                },
                                "destinationPhone": {
                                  "type": "string",
                                  "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                                },
                                "accountHolderName": {
                                  "type": "string",
                                  "description": "Bank account holder name if different from payee"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_CN"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "destinationBankCode",
                                "destinationBankName",
                                "destinationAddress",
                                "destinationCity",
                                "destinationState",
                                "destinationPostcode",
                                "type"
                              ],
                              "description": "China mainland bank deposit details (CNY bank corridor)",
                              "title": "Bank Deposit CN"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_AR"
                                  ]
                                },
                                "destinationCBU": {
                                  "type": "string",
                                  "description": "CBU — 22-digit bank account key (legacy, optional)"
                                },
                                "destinationCVU": {
                                  "type": "string",
                                  "description": "CVU — 22-digit virtual account key (legacy, optional)"
                                },
                                "destinationAlias": {
                                  "type": "string",
                                  "description": "Account alias (legacy, optional)"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                                },
                                "destinationDocumentType": {
                                  "type": "string",
                                  "description": "Document type of the recipient (legacy, optional)"
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Argentinian bank deposit details",
                              "title": "Bank Deposit AR"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Recipient bank name (required for Chilean bank payouts)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_CL"
                                  ]
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                                },
                                "destinationDocumentType": {
                                  "type": "string",
                                  "description": "Document type of the recipient (legacy, optional)"
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "destinationBankName",
                                "type",
                                "destinationBankAccountType",
                                "destinationTaxId"
                              ],
                              "description": "Chilean bank deposit details",
                              "title": "Bank Deposit CL"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "minLength": 2,
                                  "maxLength": 30,
                                  "description": "Recipient name (required, 2–30 characters)"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 11,
                                  "description": "Bank account number (max 11 digits for Bolivian accounts)"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (unused for BOB — no network discovery)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "maxLength": 20,
                                  "description": "Bank name (optional, max 20 characters)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_BO"
                                  ]
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 15,
                                  "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type",
                                "destinationTaxId"
                              ],
                              "description": "Bolivian bank deposit details",
                              "title": "Bank Deposit BO"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_PE"
                                  ]
                                },
                                "destinationCCI": {
                                  "type": "string",
                                  "description": "CCI — 20-digit interbank account code (legacy, optional)"
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "description": "Account type (corriente/ahorro) (legacy, optional)"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                                },
                                "destinationDocumentType": {
                                  "type": "string",
                                  "description": "Document type of the recipient (legacy, optional)"
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "destinationNetworkId",
                                "type"
                              ],
                              "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Bank Deposit PE",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "pattern": "^\\d{3}$",
                                  "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                                },
                                "destinationBankAccountNumber": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 20,
                                  "description": "Recipient bank account number (max 20)"
                                },
                                "destinationBankAccountType": {
                                  "type": "string",
                                  "enum": [
                                    "CORRIENTE",
                                    "AHORROS",
                                    "PHONE"
                                  ],
                                  "description": "Bank account type"
                                },
                                "destinationCCI": {
                                  "type": "string",
                                  "pattern": "^\\d{1,20}$",
                                  "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                                },
                                "destinationDocumentType": {
                                  "type": "string",
                                  "enum": [
                                    "CC",
                                    "CE",
                                    "RUC",
                                    "PAS",
                                    "PAR",
                                    "LMI",
                                    "OTHER"
                                  ],
                                  "description": "Recipient identification type"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 50,
                                  "description": "Recipient identification number (max 50)"
                                },
                                "email": {
                                  "type": "string",
                                  "pattern": "^.+@.+\\..+$",
                                  "description": "Recipient email (required for PEN payouts)"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "pattern": "^\\d{1,9}$",
                                  "description": "Recipient phone number (required, max 9 digits)"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_PEN"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankCode",
                                "destinationBankAccountNumber",
                                "destinationBankAccountType",
                                "destinationCCI",
                                "destinationDocumentType",
                                "destinationTaxId",
                                "email",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Peruvian bank deposit details (bank-code payout corridor).",
                              "title": "Bank Deposit PEN"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_NG"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Nigeria bank deposit details",
                              "title": "Bank Deposit NG"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_KE"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Kenya bank deposit details",
                              "title": "Bank Deposit KE"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_GH"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Bank Deposit GH",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_ZA"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "South Africa bank deposit details",
                              "title": "Bank Deposit ZA"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_TZ"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Tanzania bank deposit details",
                              "title": "Bank Deposit TZ"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_UG"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Uganda bank deposit details",
                              "title": "Bank Deposit UG"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_RW"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Rwanda bank deposit details",
                              "title": "Bank Deposit RW"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_MW"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Malawi bank deposit details",
                              "title": "Bank Deposit MW"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_ZM"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Zambia bank deposit details",
                              "title": "Bank Deposit ZM"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_BW"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Botswana bank deposit details",
                              "title": "Bank Deposit BW"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_CD"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Bank Deposit CD",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_XOF"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "West African CFA bank deposit details",
                              "title": "Bank Deposit XOF"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankAccount": {
                                  "type": "string",
                                  "description": "Bank account"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationBankName is given)"
                                },
                                "destinationBankName": {
                                  "type": "string",
                                  "description": "Bank name (used to resolve the network when id is omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_XAF"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccount",
                                "type"
                              ],
                              "description": "Central African CFA bank deposit details",
                              "title": "Bank Deposit XAF"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_NG"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Nigeria mobile money details",
                              "title": "Mobile Money NG"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_KE"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Kenya mobile money details",
                              "title": "Mobile Money KE"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_GH"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Mobile Money GH",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_ZA"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "South Africa mobile money details",
                              "title": "Mobile Money ZA"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_TZ"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Tanzania mobile money details",
                              "title": "Mobile Money TZ"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_UG"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Uganda mobile money details",
                              "title": "Mobile Money UG"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_RW"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Rwanda mobile money details",
                              "title": "Mobile Money RW"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_MW"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Malawi mobile money details",
                              "title": "Mobile Money MW"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_ZM"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Zambia mobile money details",
                              "title": "Mobile Money ZM"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_BW"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Botswana mobile money details",
                              "title": "Mobile Money BW"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_CD"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "Mobile Money CD",
                              "deprecated": true
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_XOF"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "West African CFA mobile money details",
                              "title": "Mobile Money XOF"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPhoneNumber": {
                                  "type": "string",
                                  "description": "Phone number"
                                },
                                "destinationNetworkId": {
                                  "type": "string",
                                  "description": "Payout network id (optional if destinationNetworkName is given)"
                                },
                                "destinationNetworkName": {
                                  "type": "string",
                                  "description": "Mobile money network name (resolves the network when id omitted)"
                                },
                                "country": {
                                  "type": "string",
                                  "description": "ISO 3166 country code"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "MOBILE_MONEY_XAF"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPhoneNumber",
                                "type"
                              ],
                              "description": "Central African CFA mobile money details",
                              "title": "Mobile Money XAF"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationBankCode": {
                                  "type": "string",
                                  "description": "Bank code"
                                },
                                "destinationBankAccountNumber": {
                                  "type": "string",
                                  "description": "Bank account number (18-digit CLABE)"
                                },
                                "numericReference": {
                                  "type": "string",
                                  "description": "Numeric reference"
                                },
                                "notesReference": {
                                  "type": "string",
                                  "description": "Notes reference"
                                },
                                "destinationClabe": {
                                  "type": "string",
                                  "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                                },
                                "destinationTaxId": {
                                  "type": "string",
                                  "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "BANK_DEPOSIT_MX"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationBankAccountNumber",
                                "type"
                              ],
                              "description": "Mexican bank deposit details",
                              "title": "Bank Deposit MX"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "destinationName": {
                                  "type": "string",
                                  "description": "Name of the recipient"
                                },
                                "destinationPseNumber": {
                                  "type": "string",
                                  "description": "PSE number"
                                },
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "PSE"
                                  ]
                                }
                              },
                              "required": [
                                "destinationName",
                                "destinationPseNumber",
                                "type"
                              ],
                              "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                              "title": "PSE",
                              "deprecated": true
                            }
                          ],
                          "description": "Detailed withdrawal information",
                          "title": "WithdrawalInfo"
                        },
                        "source": {
                          "type": "string",
                          "enum": [
                            "ui",
                            "apiApp",
                            "externalApi",
                            "internal"
                          ],
                          "description": "Source of withdrawal creation",
                          "example": "externalApi"
                        },
                        "requires2FA": {
                          "type": "boolean",
                          "description": "Whether 2FA is required for this withdrawal",
                          "example": false
                        },
                        "twoFactorToken": {
                          "type": "string",
                          "description": "2FA token for email approval",
                          "example": "abc123"
                        },
                        "twoFactorApprovedAt": {
                          "type": "number",
                          "description": "Timestamp when 2FA was approved",
                          "example": 1723027132
                        },
                        "errorCode": {
                          "type": "string",
                          "description": "Error code when status is Review",
                          "example": "INSUFFICIENT_BALANCE"
                        },
                        "errorDetails": {
                          "type": "string",
                          "description": "Detailed error information",
                          "example": "Insufficient balance for withdrawal"
                        },
                        "reviewedBy": {
                          "type": "string",
                          "description": "Admin email who reviewed the withdrawal",
                          "example": "admin@example.com"
                        },
                        "reviewedAt": {
                          "type": "number",
                          "description": "Timestamp when review happened",
                          "example": 1723027132
                        }
                      },
                      "required": [
                        "withdrawalId",
                        "createdAt",
                        "amount",
                        "currency",
                        "fee",
                        "feeCurrency",
                        "status"
                      ],
                      "description": "Details of the withdrawal associated with the order"
                    },
                    "createdAt": {
                      "type": "number",
                      "description": "Creation time of the order (timestamp)",
                      "examples": [
                        1723027132,
                        1723027200,
                        1723027300
                      ]
                    },
                    "updatedAt": {
                      "type": "number",
                      "description": "Last update time of the order (timestamp)",
                      "examples": [
                        1723027132,
                        1723027200,
                        1723027300
                      ]
                    },
                    "status": {
                      "type": "string",
                      "enum": [
                        "Pending",
                        "Processing",
                        "Reviewing",
                        "Success",
                        "Failed",
                        "Canceled"
                      ],
                      "description": "Current status of the order",
                      "title": "OrderStatus",
                      "examples": [
                        "Pending",
                        "Processing",
                        "Reviewing",
                        "Success",
                        "Failed"
                      ]
                    },
                    "externalReference": {
                      "type": "string",
                      "description": "External reference of the order, as you supplied it on create."
                    },
                    "externalRefeference": {
                      "type": "string",
                      "description": "Deprecated misspelling of `externalReference` — same value. Read `externalReference` instead; this key remains for backward compatibility and will be removed in a future major version.",
                      "deprecated": true
                    },
                    "fee": {
                      "type": "number",
                      "minimum": 0,
                      "description": "Total fee for the order once all the execution is completed",
                      "examples": [
                        6.37,
                        8.5,
                        10.25
                      ]
                    },
                    "expectedFee": {
                      "type": "number",
                      "minimum": 0,
                      "exclusiveMinimum": true,
                      "description": "Expected fee given the initial deposit amount",
                      "examples": [
                        6.88,
                        9.2,
                        11.5
                      ]
                    },
                    "expectedGasFee": {
                      "type": "number",
                      "description": "Expected gas fee if the withdrawal is with crypto",
                      "examples": [
                        6.88,
                        8.5,
                        10.25
                      ]
                    },
                    "feeCurrency": {
                      "type": "string",
                      "description": "Currency of the fee",
                      "examples": [
                        "EUR",
                        "USD",
                        "GBP"
                      ]
                    }
                  },
                  "required": [
                    "orderId",
                    "createdAt",
                    "status",
                    "fee",
                    "expectedFee",
                    "feeCurrency"
                  ],
                  "description": "Response schema for getting details of a specific order"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/orders/ord_7Ka9dP2x\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/orders/ord_7Ka9dP2x\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/orders/ord_7Ka9dP2x\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      },
      "delete": {
        "summary": "Delete order",
        "description": "This endpoint cancels a specific order. The order must be in status PENDING. After a successful call, the order becomes PendingCancel and then Canceled once processing completes.",
        "tags": [
          "Orders"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 12,
              "maxLength": 12,
              "pattern": "^[A-Z0-9]{12}$",
              "description": "ID of the order",
              "examples": [
                "01CLFXMT67II",
                "2R7E5Y5KFXP8",
                "4FWWRE3Y2URM"
              ]
            },
            "required": true,
            "description": "ID of the order",
            "name": "orderId",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful cancelation of order",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Whether the deletion was successful"
                    },
                    "message": {
                      "type": "string",
                      "description": "Success message"
                    }
                  },
                  "required": [
                    "success"
                  ],
                  "description": "Response schema for deleting a specific order"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/orders/ord_7Ka9dP2x\", {\n    method: \"DELETE\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.delete(\n    \"https://api.virtuabroker.com/v1/orders/ord_7Ka9dP2x\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X DELETE \"https://api.virtuabroker.com/v1/orders/ord_7Ka9dP2x\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/orders/{orderId}/confirm-payin": {
      "post": {
        "summary": "Confirm payin for an order",
        "description": "This endpoint confirms a payin transaction for a specific order by providing the reference ID of the payment. For IMPS (India), provide the UTR you receive after completing the transfer as the referenceId.",
        "tags": [
          "Orders"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "description": "ID of the order"
            },
            "required": true,
            "description": "ID of the order",
            "name": "orderId",
            "in": "path"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "orderId": {
                    "type": "string",
                    "minLength": 12,
                    "maxLength": 12,
                    "pattern": "^[A-Z0-9]{12}$",
                    "description": "ID of the order",
                    "examples": [
                      "01CLFXMT67II",
                      "2R7E5Y5KFXP8",
                      "4FWWRE3Y2URM"
                    ]
                  },
                  "referenceId": {
                    "type": "string",
                    "description": "Reference ID of the payin, for India is the UTR given after the payment",
                    "examples": [
                      "123",
                      "456",
                      "789"
                    ]
                  }
                },
                "required": [
                  "orderId",
                  "referenceId"
                ],
                "description": "Request schema for confirming a payin"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful payin confirmation",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Whether the payin was confirmed successfully"
                    },
                    "message": {
                      "type": "string",
                      "description": "Success message"
                    }
                  },
                  "required": [
                    "success"
                  ],
                  "description": "Response schema for confirming a payin"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/orders/ord_7Ka9dP2x/confirm-payin\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"orderId\": \"01CLFXMT67II\",\n      \"referenceId\": \"123\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api.virtuabroker.com/v1/orders/ord_7Ka9dP2x/confirm-payin\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"orderId\": \"01CLFXMT67II\",\n        \"referenceId\": \"123\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api.virtuabroker.com/v1/orders/ord_7Ka9dP2x/confirm-payin\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"orderId\": \"01CLFXMT67II\",\n  \"referenceId\": \"123\"\n}'"
          }
        ]
      }
    },
    "/v1/kyc": {
      "post": {
        "summary": "Create KYC request",
        "description": "Starts or continues identity verification (KYC) for a user in your workspace. Request and response fields are documented on the **CreateKYCRequest** and **CreateKYCResponse** schemas.",
        "tags": [
          "KYC"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "userEmail": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 254,
                    "format": "email",
                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                    "description": "User email. Must match your workspace account onboarding rules."
                  },
                  "userPhone": {
                    "type": "string",
                    "description": "Optional. Required for some corridors (e.g. India, Turkey). Format: country code with `+`, a hyphen, then the number (e.g. +44-7700900123)."
                  },
                  "externalUserId": {
                    "type": "string",
                    "description": "Optional. Your own user identifier in your system, if you track users externally."
                  },
                  "countryCode": {
                    "type": "string",
                    "enum": [
                      "AW",
                      "AF",
                      "AO",
                      "AI",
                      "AX",
                      "AL",
                      "AD",
                      "AE",
                      "AR",
                      "AM",
                      "AS",
                      "AQ",
                      "TF",
                      "AG",
                      "AU",
                      "AT",
                      "AZ",
                      "BI",
                      "BE",
                      "BJ",
                      "BQ",
                      "BF",
                      "BD",
                      "BG",
                      "BH",
                      "BS",
                      "BA",
                      "BL",
                      "BY",
                      "BZ",
                      "BM",
                      "BO",
                      "BR",
                      "BB",
                      "BN",
                      "BT",
                      "BV",
                      "BW",
                      "CF",
                      "CA",
                      "CC",
                      "CH",
                      "CL",
                      "CN",
                      "CI",
                      "CM",
                      "CD",
                      "CG",
                      "CK",
                      "CO",
                      "KM",
                      "CV",
                      "CR",
                      "CU",
                      "CW",
                      "CX",
                      "KY",
                      "CY",
                      "CZ",
                      "DE",
                      "DJ",
                      "DM",
                      "DK",
                      "DO",
                      "DZ",
                      "EC",
                      "EG",
                      "ER",
                      "EH",
                      "ES",
                      "EE",
                      "ET",
                      "FI",
                      "FJ",
                      "FK",
                      "FR",
                      "FO",
                      "FM",
                      "GA",
                      "GB",
                      "GE",
                      "GG",
                      "GH",
                      "GI",
                      "GN",
                      "GP",
                      "GM",
                      "GW",
                      "GQ",
                      "GR",
                      "GD",
                      "GL",
                      "GT",
                      "GF",
                      "GU",
                      "GY",
                      "HK",
                      "HM",
                      "HN",
                      "HR",
                      "HT",
                      "HU",
                      "ID",
                      "IM",
                      "IN",
                      "IO",
                      "IE",
                      "IR",
                      "IQ",
                      "IS",
                      "IL",
                      "IT",
                      "JM",
                      "JE",
                      "JO",
                      "JP",
                      "KZ",
                      "KE",
                      "KG",
                      "KH",
                      "KI",
                      "KN",
                      "KR",
                      "KW",
                      "LA",
                      "LB",
                      "LR",
                      "LY",
                      "LC",
                      "LI",
                      "LK",
                      "LS",
                      "LT",
                      "LU",
                      "LV",
                      "MO",
                      "MF",
                      "MA",
                      "MC",
                      "MD",
                      "MG",
                      "MV",
                      "MX",
                      "MH",
                      "MK",
                      "ML",
                      "MT",
                      "MM",
                      "ME",
                      "MN",
                      "MP",
                      "MZ",
                      "MR",
                      "MS",
                      "MQ",
                      "MU",
                      "MW",
                      "MY",
                      "YT",
                      "NA",
                      "NC",
                      "NE",
                      "NF",
                      "NG",
                      "NI",
                      "NU",
                      "NL",
                      "NO",
                      "NP",
                      "NR",
                      "NZ",
                      "OM",
                      "PK",
                      "PA",
                      "PN",
                      "PE",
                      "PH",
                      "PW",
                      "PG",
                      "PL",
                      "PR",
                      "KP",
                      "PT",
                      "PY",
                      "PS",
                      "PF",
                      "QA",
                      "RE",
                      "RO",
                      "RU",
                      "RW",
                      "SA",
                      "SD",
                      "SN",
                      "SG",
                      "GS",
                      "SH",
                      "SJ",
                      "SB",
                      "SL",
                      "SV",
                      "SM",
                      "SO",
                      "PM",
                      "RS",
                      "SS",
                      "ST",
                      "SR",
                      "SK",
                      "SI",
                      "SE",
                      "SZ",
                      "SX",
                      "SC",
                      "SY",
                      "TC",
                      "TD",
                      "TG",
                      "TH",
                      "TJ",
                      "TK",
                      "TM",
                      "TL",
                      "TO",
                      "TT",
                      "TN",
                      "TR",
                      "TV",
                      "TW",
                      "TZ",
                      "UG",
                      "UA",
                      "UM",
                      "UY",
                      "US",
                      "UZ",
                      "VA",
                      "VC",
                      "VE",
                      "VG",
                      "VI",
                      "VN",
                      "VU",
                      "WF",
                      "WS",
                      "YE",
                      "ZA",
                      "ZM",
                      "ZW"
                    ],
                    "description": "ISO 3166-1 alpha-2 issuing country (e.g. ES, GB). Pre-selects the country in the hosted verification widget; the backend maps it to ISO alpha-3 for the provider WebSDK."
                  },
                  "sendOTPMail": {
                    "type": "boolean",
                    "description": "Whether to send an OTP email to the user. Exact behavior follows your integration contract with VirtuaBroker."
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "INDIVIDUAL",
                      "BUSINESS"
                    ],
                    "description": "KYC category: `INDIVIDUAL` for a natural person or `BUSINESS` for a business flow, per your product setup."
                  },
                  "language": {
                    "type": "string",
                    "description": "Optional. Widget UI language and access-token locale (e.g. en, es, fr). If omitted or blank, `en` is used. Use codes supported by the verification provider WebSDK."
                  },
                  "theme": {
                    "type": "string",
                    "enum": [
                      "dark",
                      "light"
                    ],
                    "description": "Optional. Hosted widget theme for the provider WebSDK. **Default: dark** (omit or send `dark`). Send `light` only for light mode."
                  },
                  "blank": {
                    "type": "boolean",
                    "description": "Optional. If `true`, the hosted widget page uses blank framing (minimal chrome: no extra branding, borders, or padding around the iframe)."
                  },
                  "width": {
                    "type": "string",
                    "description": "Optional. CSS width for the widget container on the hosted page (e.g. `100%`, `800px`, `1200px`)."
                  },
                  "height": {
                    "type": "string",
                    "description": "Optional. CSS height for the widget container on the hosted page (e.g. `100vh`, `600px`, `auto`)."
                  },
                  "forceMobile": {
                    "type": "boolean",
                    "description": "Optional. If `true`, forces the verification widget to render its mobile layout regardless of the screen width."
                  },
                  "successUrl": {
                    "type": "string",
                    "format": "uri",
                    "description": "Optional. URL the user is redirected to after completing verification, where the hosted verification flow supports it. Ignored when no redirect is supported."
                  },
                  "errorUrl": {
                    "type": "string",
                    "format": "uri",
                    "description": "Optional. URL the user is redirected to if verification fails/cancels, where the provider supports it. Ignored by providers that expose no redirect."
                  }
                },
                "required": [
                  "userEmail",
                  "countryCode",
                  "sendOTPMail",
                  "type"
                ],
                "description": "Request body for starting or continuing KYC. Required fields are sent on every call; optional fields tune the hosted verification widget and token locale."
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful KYC request. Body matches **CreateKYCResponse**; see that schema for `kycUrl`, `status`, and other fields.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Whether the API call completed successfully."
                    },
                    "kycUrl": {
                      "type": "string",
                      "description": "Present when the user must complete verification: open this URL in a browser or WebView to run the hosted widget. Omitted when the user is already approved or no widget step is needed."
                    },
                    "kycId": {
                      "type": "string",
                      "description": "Your KYC reference ID, used for support and correlation."
                    },
                    "userEmail": {
                      "type": "string",
                      "description": "Echo of the user email from the request."
                    },
                    "missingInfo": {
                      "type": "object",
                      "properties": {
                        "firstName": {
                          "type": "string",
                          "description": "First name"
                        },
                        "lastName": {
                          "type": "string",
                          "description": "Last name"
                        },
                        "email": {
                          "type": "string",
                          "description": "Email"
                        },
                        "phone": {
                          "type": "string",
                          "description": "Phone"
                        }
                      },
                      "description": "If present, fields the user still needs to provide before verification can continue."
                    },
                    "status": {
                      "type": "string",
                      "enum": [
                        "PENDING",
                        "REVIEWING",
                        "IN_PROGRESS",
                        "APPROVED",
                        "REJECTED",
                        "NOT_AVAILABLE"
                      ],
                      "description": "Current KYC status in the external API enum (e.g. PENDING, APPROVED)."
                    },
                    "missingFields": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Identity fields the user must still provide (via POST /v1/kyc/data) before verification can start. Present when the configured provider needs profile data that is not yet on file; when non-empty, `kycUrl` is omitted."
                    },
                    "errorMessage": {
                      "type": "string",
                      "description": "Human-readable error when `success` is false or the operation could not complete."
                    }
                  },
                  "required": [
                    "success"
                  ],
                  "description": "Response from POST /v1/kyc: outcome, optional widget URL, and verification status."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/kyc\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"userEmail\": \"string\",\n      \"userPhone\": \"string\",\n      \"externalUserId\": \"string\",\n      \"countryCode\": \"AW\",\n      \"sendOTPMail\": true,\n      \"type\": \"INDIVIDUAL\",\n      \"language\": \"string\",\n      \"theme\": \"dark\",\n      \"blank\": true,\n      \"width\": \"string\",\n      \"height\": \"string\",\n      \"forceMobile\": true,\n      \"successUrl\": \"string\",\n      \"errorUrl\": \"string\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api.virtuabroker.com/v1/kyc\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"userEmail\": \"string\",\n        \"userPhone\": \"string\",\n        \"externalUserId\": \"string\",\n        \"countryCode\": \"AW\",\n        \"sendOTPMail\": True,\n        \"type\": \"INDIVIDUAL\",\n        \"language\": \"string\",\n        \"theme\": \"dark\",\n        \"blank\": True,\n        \"width\": \"string\",\n        \"height\": \"string\",\n        \"forceMobile\": True,\n        \"successUrl\": \"string\",\n        \"errorUrl\": \"string\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api.virtuabroker.com/v1/kyc\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"userEmail\": \"string\",\n  \"userPhone\": \"string\",\n  \"externalUserId\": \"string\",\n  \"countryCode\": \"AW\",\n  \"sendOTPMail\": true,\n  \"type\": \"INDIVIDUAL\",\n  \"language\": \"string\",\n  \"theme\": \"dark\",\n  \"blank\": true,\n  \"width\": \"string\",\n  \"height\": \"string\",\n  \"forceMobile\": true,\n  \"successUrl\": \"string\",\n  \"errorUrl\": \"string\"\n}'"
          }
        ]
      }
    },
    "/v1/kyc/data": {
      "post": {
        "summary": "Save KYC data",
        "description": "Pre-supplies provider-neutral KYC data you already hold for a user, so the hosted verification form only asks for what is still missing. Send `userEmail` plus any subset of KYC fields (name, birthdate, nationality, phone, employmentStatus, fundsOrigin, document, addresses, …) at the request root; calls merge over previously stored data. The response lists which required fields are now present (**providedFields**) and which the user must still complete (**missingFields**). Request and response fields are documented on the **SaveKYCProfileRequest** and **SaveKYCProfileResponse** schemas.",
        "tags": [
          "KYC"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "userEmail": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 254,
                    "format": "email",
                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                    "description": "User email. Must match your workspace account onboarding rules."
                  },
                  "firstName": {
                    "type": "string",
                    "minLength": 1
                  },
                  "lastName": {
                    "type": "string",
                    "minLength": 1
                  },
                  "birthdate": {
                    "type": "string",
                    "minLength": 1,
                    "description": "ISO 8601"
                  },
                  "birthCountry": {
                    "type": "string",
                    "enum": [
                      "AW",
                      "AF",
                      "AO",
                      "AI",
                      "AX",
                      "AL",
                      "AD",
                      "AE",
                      "AR",
                      "AM",
                      "AS",
                      "AQ",
                      "TF",
                      "AG",
                      "AU",
                      "AT",
                      "AZ",
                      "BI",
                      "BE",
                      "BJ",
                      "BQ",
                      "BF",
                      "BD",
                      "BG",
                      "BH",
                      "BS",
                      "BA",
                      "BL",
                      "BY",
                      "BZ",
                      "BM",
                      "BO",
                      "BR",
                      "BB",
                      "BN",
                      "BT",
                      "BV",
                      "BW",
                      "CF",
                      "CA",
                      "CC",
                      "CH",
                      "CL",
                      "CN",
                      "CI",
                      "CM",
                      "CD",
                      "CG",
                      "CK",
                      "CO",
                      "KM",
                      "CV",
                      "CR",
                      "CU",
                      "CW",
                      "CX",
                      "KY",
                      "CY",
                      "CZ",
                      "DE",
                      "DJ",
                      "DM",
                      "DK",
                      "DO",
                      "DZ",
                      "EC",
                      "EG",
                      "ER",
                      "EH",
                      "ES",
                      "EE",
                      "ET",
                      "FI",
                      "FJ",
                      "FK",
                      "FR",
                      "FO",
                      "FM",
                      "GA",
                      "GB",
                      "GE",
                      "GG",
                      "GH",
                      "GI",
                      "GN",
                      "GP",
                      "GM",
                      "GW",
                      "GQ",
                      "GR",
                      "GD",
                      "GL",
                      "GT",
                      "GF",
                      "GU",
                      "GY",
                      "HK",
                      "HM",
                      "HN",
                      "HR",
                      "HT",
                      "HU",
                      "ID",
                      "IM",
                      "IN",
                      "IO",
                      "IE",
                      "IR",
                      "IQ",
                      "IS",
                      "IL",
                      "IT",
                      "JM",
                      "JE",
                      "JO",
                      "JP",
                      "KZ",
                      "KE",
                      "KG",
                      "KH",
                      "KI",
                      "KN",
                      "KR",
                      "KW",
                      "LA",
                      "LB",
                      "LR",
                      "LY",
                      "LC",
                      "LI",
                      "LK",
                      "LS",
                      "LT",
                      "LU",
                      "LV",
                      "MO",
                      "MF",
                      "MA",
                      "MC",
                      "MD",
                      "MG",
                      "MV",
                      "MX",
                      "MH",
                      "MK",
                      "ML",
                      "MT",
                      "MM",
                      "ME",
                      "MN",
                      "MP",
                      "MZ",
                      "MR",
                      "MS",
                      "MQ",
                      "MU",
                      "MW",
                      "MY",
                      "YT",
                      "NA",
                      "NC",
                      "NE",
                      "NF",
                      "NG",
                      "NI",
                      "NU",
                      "NL",
                      "NO",
                      "NP",
                      "NR",
                      "NZ",
                      "OM",
                      "PK",
                      "PA",
                      "PN",
                      "PE",
                      "PH",
                      "PW",
                      "PG",
                      "PL",
                      "PR",
                      "KP",
                      "PT",
                      "PY",
                      "PS",
                      "PF",
                      "QA",
                      "RE",
                      "RO",
                      "RU",
                      "RW",
                      "SA",
                      "SD",
                      "SN",
                      "SG",
                      "GS",
                      "SH",
                      "SJ",
                      "SB",
                      "SL",
                      "SV",
                      "SM",
                      "SO",
                      "PM",
                      "RS",
                      "SS",
                      "ST",
                      "SR",
                      "SK",
                      "SI",
                      "SE",
                      "SZ",
                      "SX",
                      "SC",
                      "SY",
                      "TC",
                      "TD",
                      "TG",
                      "TH",
                      "TJ",
                      "TK",
                      "TM",
                      "TL",
                      "TO",
                      "TT",
                      "TN",
                      "TR",
                      "TV",
                      "TW",
                      "TZ",
                      "UG",
                      "UA",
                      "UM",
                      "UY",
                      "US",
                      "UZ",
                      "VA",
                      "VC",
                      "VE",
                      "VG",
                      "VI",
                      "VN",
                      "VU",
                      "WF",
                      "WS",
                      "YE",
                      "ZA",
                      "ZM",
                      "ZW"
                    ],
                    "description": "Country of birth, ISO 3166-1 alpha-2"
                  },
                  "gender": {
                    "type": "string",
                    "enum": [
                      "male",
                      "female",
                      "N/D"
                    ]
                  },
                  "nationality": {
                    "type": "string",
                    "enum": [
                      "AW",
                      "AF",
                      "AO",
                      "AI",
                      "AX",
                      "AL",
                      "AD",
                      "AE",
                      "AR",
                      "AM",
                      "AS",
                      "AQ",
                      "TF",
                      "AG",
                      "AU",
                      "AT",
                      "AZ",
                      "BI",
                      "BE",
                      "BJ",
                      "BQ",
                      "BF",
                      "BD",
                      "BG",
                      "BH",
                      "BS",
                      "BA",
                      "BL",
                      "BY",
                      "BZ",
                      "BM",
                      "BO",
                      "BR",
                      "BB",
                      "BN",
                      "BT",
                      "BV",
                      "BW",
                      "CF",
                      "CA",
                      "CC",
                      "CH",
                      "CL",
                      "CN",
                      "CI",
                      "CM",
                      "CD",
                      "CG",
                      "CK",
                      "CO",
                      "KM",
                      "CV",
                      "CR",
                      "CU",
                      "CW",
                      "CX",
                      "KY",
                      "CY",
                      "CZ",
                      "DE",
                      "DJ",
                      "DM",
                      "DK",
                      "DO",
                      "DZ",
                      "EC",
                      "EG",
                      "ER",
                      "EH",
                      "ES",
                      "EE",
                      "ET",
                      "FI",
                      "FJ",
                      "FK",
                      "FR",
                      "FO",
                      "FM",
                      "GA",
                      "GB",
                      "GE",
                      "GG",
                      "GH",
                      "GI",
                      "GN",
                      "GP",
                      "GM",
                      "GW",
                      "GQ",
                      "GR",
                      "GD",
                      "GL",
                      "GT",
                      "GF",
                      "GU",
                      "GY",
                      "HK",
                      "HM",
                      "HN",
                      "HR",
                      "HT",
                      "HU",
                      "ID",
                      "IM",
                      "IN",
                      "IO",
                      "IE",
                      "IR",
                      "IQ",
                      "IS",
                      "IL",
                      "IT",
                      "JM",
                      "JE",
                      "JO",
                      "JP",
                      "KZ",
                      "KE",
                      "KG",
                      "KH",
                      "KI",
                      "KN",
                      "KR",
                      "KW",
                      "LA",
                      "LB",
                      "LR",
                      "LY",
                      "LC",
                      "LI",
                      "LK",
                      "LS",
                      "LT",
                      "LU",
                      "LV",
                      "MO",
                      "MF",
                      "MA",
                      "MC",
                      "MD",
                      "MG",
                      "MV",
                      "MX",
                      "MH",
                      "MK",
                      "ML",
                      "MT",
                      "MM",
                      "ME",
                      "MN",
                      "MP",
                      "MZ",
                      "MR",
                      "MS",
                      "MQ",
                      "MU",
                      "MW",
                      "MY",
                      "YT",
                      "NA",
                      "NC",
                      "NE",
                      "NF",
                      "NG",
                      "NI",
                      "NU",
                      "NL",
                      "NO",
                      "NP",
                      "NR",
                      "NZ",
                      "OM",
                      "PK",
                      "PA",
                      "PN",
                      "PE",
                      "PH",
                      "PW",
                      "PG",
                      "PL",
                      "PR",
                      "KP",
                      "PT",
                      "PY",
                      "PS",
                      "PF",
                      "QA",
                      "RE",
                      "RO",
                      "RU",
                      "RW",
                      "SA",
                      "SD",
                      "SN",
                      "SG",
                      "GS",
                      "SH",
                      "SJ",
                      "SB",
                      "SL",
                      "SV",
                      "SM",
                      "SO",
                      "PM",
                      "RS",
                      "SS",
                      "ST",
                      "SR",
                      "SK",
                      "SI",
                      "SE",
                      "SZ",
                      "SX",
                      "SC",
                      "SY",
                      "TC",
                      "TD",
                      "TG",
                      "TH",
                      "TJ",
                      "TK",
                      "TM",
                      "TL",
                      "TO",
                      "TT",
                      "TN",
                      "TR",
                      "TV",
                      "TW",
                      "TZ",
                      "UG",
                      "UA",
                      "UM",
                      "UY",
                      "US",
                      "UZ",
                      "VA",
                      "VC",
                      "VE",
                      "VG",
                      "VI",
                      "VN",
                      "VU",
                      "WF",
                      "WS",
                      "YE",
                      "ZA",
                      "ZM",
                      "ZW"
                    ],
                    "description": "ISO 3166-1 alpha-2"
                  },
                  "phone": {
                    "type": "string",
                    "minLength": 1,
                    "description": "E.164, e.g. +447700900123"
                  },
                  "employmentStatus": {
                    "type": "string",
                    "enum": [
                      "employed",
                      "selfEmployed",
                      "businessOwner",
                      "unemployed",
                      "student",
                      "retired",
                      "others"
                    ]
                  },
                  "fundsOrigin": {
                    "type": "string",
                    "enum": [
                      "salary",
                      "incomes",
                      "investments",
                      "pensions",
                      "donations",
                      "propertiesSell",
                      "others"
                    ]
                  },
                  "fundsOriginOthersReason": {
                    "type": "string",
                    "minLength": 1
                  },
                  "accountPurpose": {
                    "type": "string",
                    "enum": [
                      "savings",
                      "currencyExchange",
                      "investment",
                      "trading",
                      "cryptocurrencyPayments"
                    ]
                  },
                  "depositEstimation": {
                    "type": "object",
                    "properties": {
                      "minimum": {
                        "type": "integer"
                      },
                      "maximum": {
                        "type": "integer"
                      }
                    },
                    "required": [
                      "minimum",
                      "maximum"
                    ]
                  },
                  "profession": {
                    "type": "string",
                    "minLength": 1,
                    "description": "The holder's activity sector, as one of the sector codes we publish for your workspace — a short numeric code such as `24`, not a job title. Free text is still accepted for backward compatibility but is NOT recorded: a value that is not a known sector code is treated as not declared. If you do not hold a sector code, omit the field and the holder chooses their sector while completing verification."
                  },
                  "pepDeclaration": {
                    "type": "string",
                    "enum": [
                      "no",
                      "yes",
                      "family",
                      "related"
                    ],
                    "description": "The holder's politically-exposed-person self-declaration: `no` (not exposed), `yes` (is a politically exposed person), `family` (an immediate family member of one) or `related` (a known close associate of one). Omit the field when the holder has not answered: an omitted declaration is stored as NOT DECLARED and is never forwarded as `no`. Never send `no` to mean unanswered. The hosted verification page does NOT ask for this field, so supply it here for holders who verify through that page; the in-app verification form collects it directly."
                  },
                  "taxId": {
                    "type": "object",
                    "properties": {
                      "number": {
                        "type": "string",
                        "minLength": 1
                      },
                      "country": {
                        "type": "string",
                        "enum": [
                          "AW",
                          "AF",
                          "AO",
                          "AI",
                          "AX",
                          "AL",
                          "AD",
                          "AE",
                          "AR",
                          "AM",
                          "AS",
                          "AQ",
                          "TF",
                          "AG",
                          "AU",
                          "AT",
                          "AZ",
                          "BI",
                          "BE",
                          "BJ",
                          "BQ",
                          "BF",
                          "BD",
                          "BG",
                          "BH",
                          "BS",
                          "BA",
                          "BL",
                          "BY",
                          "BZ",
                          "BM",
                          "BO",
                          "BR",
                          "BB",
                          "BN",
                          "BT",
                          "BV",
                          "BW",
                          "CF",
                          "CA",
                          "CC",
                          "CH",
                          "CL",
                          "CN",
                          "CI",
                          "CM",
                          "CD",
                          "CG",
                          "CK",
                          "CO",
                          "KM",
                          "CV",
                          "CR",
                          "CU",
                          "CW",
                          "CX",
                          "KY",
                          "CY",
                          "CZ",
                          "DE",
                          "DJ",
                          "DM",
                          "DK",
                          "DO",
                          "DZ",
                          "EC",
                          "EG",
                          "ER",
                          "EH",
                          "ES",
                          "EE",
                          "ET",
                          "FI",
                          "FJ",
                          "FK",
                          "FR",
                          "FO",
                          "FM",
                          "GA",
                          "GB",
                          "GE",
                          "GG",
                          "GH",
                          "GI",
                          "GN",
                          "GP",
                          "GM",
                          "GW",
                          "GQ",
                          "GR",
                          "GD",
                          "GL",
                          "GT",
                          "GF",
                          "GU",
                          "GY",
                          "HK",
                          "HM",
                          "HN",
                          "HR",
                          "HT",
                          "HU",
                          "ID",
                          "IM",
                          "IN",
                          "IO",
                          "IE",
                          "IR",
                          "IQ",
                          "IS",
                          "IL",
                          "IT",
                          "JM",
                          "JE",
                          "JO",
                          "JP",
                          "KZ",
                          "KE",
                          "KG",
                          "KH",
                          "KI",
                          "KN",
                          "KR",
                          "KW",
                          "LA",
                          "LB",
                          "LR",
                          "LY",
                          "LC",
                          "LI",
                          "LK",
                          "LS",
                          "LT",
                          "LU",
                          "LV",
                          "MO",
                          "MF",
                          "MA",
                          "MC",
                          "MD",
                          "MG",
                          "MV",
                          "MX",
                          "MH",
                          "MK",
                          "ML",
                          "MT",
                          "MM",
                          "ME",
                          "MN",
                          "MP",
                          "MZ",
                          "MR",
                          "MS",
                          "MQ",
                          "MU",
                          "MW",
                          "MY",
                          "YT",
                          "NA",
                          "NC",
                          "NE",
                          "NF",
                          "NG",
                          "NI",
                          "NU",
                          "NL",
                          "NO",
                          "NP",
                          "NR",
                          "NZ",
                          "OM",
                          "PK",
                          "PA",
                          "PN",
                          "PE",
                          "PH",
                          "PW",
                          "PG",
                          "PL",
                          "PR",
                          "KP",
                          "PT",
                          "PY",
                          "PS",
                          "PF",
                          "QA",
                          "RE",
                          "RO",
                          "RU",
                          "RW",
                          "SA",
                          "SD",
                          "SN",
                          "SG",
                          "GS",
                          "SH",
                          "SJ",
                          "SB",
                          "SL",
                          "SV",
                          "SM",
                          "SO",
                          "PM",
                          "RS",
                          "SS",
                          "ST",
                          "SR",
                          "SK",
                          "SI",
                          "SE",
                          "SZ",
                          "SX",
                          "SC",
                          "SY",
                          "TC",
                          "TD",
                          "TG",
                          "TH",
                          "TJ",
                          "TK",
                          "TM",
                          "TL",
                          "TO",
                          "TT",
                          "TN",
                          "TR",
                          "TV",
                          "TW",
                          "TZ",
                          "UG",
                          "UA",
                          "UM",
                          "UY",
                          "US",
                          "UZ",
                          "VA",
                          "VC",
                          "VE",
                          "VG",
                          "VI",
                          "VN",
                          "VU",
                          "WF",
                          "WS",
                          "YE",
                          "ZA",
                          "ZM",
                          "ZW"
                        ],
                        "description": "Issuing country, ISO 3166-1 alpha-2"
                      }
                    },
                    "required": [
                      "number",
                      "country"
                    ]
                  },
                  "document": {
                    "type": "object",
                    "properties": {
                      "type": {
                        "type": "string",
                        "enum": [
                          "idcard",
                          "passport",
                          "drivinglicense",
                          "visa"
                        ]
                      },
                      "id": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Document number/identifier"
                      },
                      "expiryDate": {
                        "type": "string",
                        "minLength": 1,
                        "description": "ISO 8601"
                      },
                      "issuingCountry": {
                        "type": "string",
                        "enum": [
                          "AW",
                          "AF",
                          "AO",
                          "AI",
                          "AX",
                          "AL",
                          "AD",
                          "AE",
                          "AR",
                          "AM",
                          "AS",
                          "AQ",
                          "TF",
                          "AG",
                          "AU",
                          "AT",
                          "AZ",
                          "BI",
                          "BE",
                          "BJ",
                          "BQ",
                          "BF",
                          "BD",
                          "BG",
                          "BH",
                          "BS",
                          "BA",
                          "BL",
                          "BY",
                          "BZ",
                          "BM",
                          "BO",
                          "BR",
                          "BB",
                          "BN",
                          "BT",
                          "BV",
                          "BW",
                          "CF",
                          "CA",
                          "CC",
                          "CH",
                          "CL",
                          "CN",
                          "CI",
                          "CM",
                          "CD",
                          "CG",
                          "CK",
                          "CO",
                          "KM",
                          "CV",
                          "CR",
                          "CU",
                          "CW",
                          "CX",
                          "KY",
                          "CY",
                          "CZ",
                          "DE",
                          "DJ",
                          "DM",
                          "DK",
                          "DO",
                          "DZ",
                          "EC",
                          "EG",
                          "ER",
                          "EH",
                          "ES",
                          "EE",
                          "ET",
                          "FI",
                          "FJ",
                          "FK",
                          "FR",
                          "FO",
                          "FM",
                          "GA",
                          "GB",
                          "GE",
                          "GG",
                          "GH",
                          "GI",
                          "GN",
                          "GP",
                          "GM",
                          "GW",
                          "GQ",
                          "GR",
                          "GD",
                          "GL",
                          "GT",
                          "GF",
                          "GU",
                          "GY",
                          "HK",
                          "HM",
                          "HN",
                          "HR",
                          "HT",
                          "HU",
                          "ID",
                          "IM",
                          "IN",
                          "IO",
                          "IE",
                          "IR",
                          "IQ",
                          "IS",
                          "IL",
                          "IT",
                          "JM",
                          "JE",
                          "JO",
                          "JP",
                          "KZ",
                          "KE",
                          "KG",
                          "KH",
                          "KI",
                          "KN",
                          "KR",
                          "KW",
                          "LA",
                          "LB",
                          "LR",
                          "LY",
                          "LC",
                          "LI",
                          "LK",
                          "LS",
                          "LT",
                          "LU",
                          "LV",
                          "MO",
                          "MF",
                          "MA",
                          "MC",
                          "MD",
                          "MG",
                          "MV",
                          "MX",
                          "MH",
                          "MK",
                          "ML",
                          "MT",
                          "MM",
                          "ME",
                          "MN",
                          "MP",
                          "MZ",
                          "MR",
                          "MS",
                          "MQ",
                          "MU",
                          "MW",
                          "MY",
                          "YT",
                          "NA",
                          "NC",
                          "NE",
                          "NF",
                          "NG",
                          "NI",
                          "NU",
                          "NL",
                          "NO",
                          "NP",
                          "NR",
                          "NZ",
                          "OM",
                          "PK",
                          "PA",
                          "PN",
                          "PE",
                          "PH",
                          "PW",
                          "PG",
                          "PL",
                          "PR",
                          "KP",
                          "PT",
                          "PY",
                          "PS",
                          "PF",
                          "QA",
                          "RE",
                          "RO",
                          "RU",
                          "RW",
                          "SA",
                          "SD",
                          "SN",
                          "SG",
                          "GS",
                          "SH",
                          "SJ",
                          "SB",
                          "SL",
                          "SV",
                          "SM",
                          "SO",
                          "PM",
                          "RS",
                          "SS",
                          "ST",
                          "SR",
                          "SK",
                          "SI",
                          "SE",
                          "SZ",
                          "SX",
                          "SC",
                          "SY",
                          "TC",
                          "TD",
                          "TG",
                          "TH",
                          "TJ",
                          "TK",
                          "TM",
                          "TL",
                          "TO",
                          "TT",
                          "TN",
                          "TR",
                          "TV",
                          "TW",
                          "TZ",
                          "UG",
                          "UA",
                          "UM",
                          "UY",
                          "US",
                          "UZ",
                          "VA",
                          "VC",
                          "VE",
                          "VG",
                          "VI",
                          "VN",
                          "VU",
                          "WF",
                          "WS",
                          "YE",
                          "ZA",
                          "ZM",
                          "ZW"
                        ],
                        "description": "Issuing country, ISO 3166-1 alpha-2"
                      }
                    }
                  },
                  "occupations": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "minLength": 1
                    }
                  },
                  "addresses": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "street": {
                          "type": "string",
                          "minLength": 1
                        },
                        "city": {
                          "type": "string",
                          "minLength": 1
                        },
                        "state": {
                          "type": "string",
                          "minLength": 1
                        },
                        "country": {
                          "type": "string",
                          "enum": [
                            "AW",
                            "AF",
                            "AO",
                            "AI",
                            "AX",
                            "AL",
                            "AD",
                            "AE",
                            "AR",
                            "AM",
                            "AS",
                            "AQ",
                            "TF",
                            "AG",
                            "AU",
                            "AT",
                            "AZ",
                            "BI",
                            "BE",
                            "BJ",
                            "BQ",
                            "BF",
                            "BD",
                            "BG",
                            "BH",
                            "BS",
                            "BA",
                            "BL",
                            "BY",
                            "BZ",
                            "BM",
                            "BO",
                            "BR",
                            "BB",
                            "BN",
                            "BT",
                            "BV",
                            "BW",
                            "CF",
                            "CA",
                            "CC",
                            "CH",
                            "CL",
                            "CN",
                            "CI",
                            "CM",
                            "CD",
                            "CG",
                            "CK",
                            "CO",
                            "KM",
                            "CV",
                            "CR",
                            "CU",
                            "CW",
                            "CX",
                            "KY",
                            "CY",
                            "CZ",
                            "DE",
                            "DJ",
                            "DM",
                            "DK",
                            "DO",
                            "DZ",
                            "EC",
                            "EG",
                            "ER",
                            "EH",
                            "ES",
                            "EE",
                            "ET",
                            "FI",
                            "FJ",
                            "FK",
                            "FR",
                            "FO",
                            "FM",
                            "GA",
                            "GB",
                            "GE",
                            "GG",
                            "GH",
                            "GI",
                            "GN",
                            "GP",
                            "GM",
                            "GW",
                            "GQ",
                            "GR",
                            "GD",
                            "GL",
                            "GT",
                            "GF",
                            "GU",
                            "GY",
                            "HK",
                            "HM",
                            "HN",
                            "HR",
                            "HT",
                            "HU",
                            "ID",
                            "IM",
                            "IN",
                            "IO",
                            "IE",
                            "IR",
                            "IQ",
                            "IS",
                            "IL",
                            "IT",
                            "JM",
                            "JE",
                            "JO",
                            "JP",
                            "KZ",
                            "KE",
                            "KG",
                            "KH",
                            "KI",
                            "KN",
                            "KR",
                            "KW",
                            "LA",
                            "LB",
                            "LR",
                            "LY",
                            "LC",
                            "LI",
                            "LK",
                            "LS",
                            "LT",
                            "LU",
                            "LV",
                            "MO",
                            "MF",
                            "MA",
                            "MC",
                            "MD",
                            "MG",
                            "MV",
                            "MX",
                            "MH",
                            "MK",
                            "ML",
                            "MT",
                            "MM",
                            "ME",
                            "MN",
                            "MP",
                            "MZ",
                            "MR",
                            "MS",
                            "MQ",
                            "MU",
                            "MW",
                            "MY",
                            "YT",
                            "NA",
                            "NC",
                            "NE",
                            "NF",
                            "NG",
                            "NI",
                            "NU",
                            "NL",
                            "NO",
                            "NP",
                            "NR",
                            "NZ",
                            "OM",
                            "PK",
                            "PA",
                            "PN",
                            "PE",
                            "PH",
                            "PW",
                            "PG",
                            "PL",
                            "PR",
                            "KP",
                            "PT",
                            "PY",
                            "PS",
                            "PF",
                            "QA",
                            "RE",
                            "RO",
                            "RU",
                            "RW",
                            "SA",
                            "SD",
                            "SN",
                            "SG",
                            "GS",
                            "SH",
                            "SJ",
                            "SB",
                            "SL",
                            "SV",
                            "SM",
                            "SO",
                            "PM",
                            "RS",
                            "SS",
                            "ST",
                            "SR",
                            "SK",
                            "SI",
                            "SE",
                            "SZ",
                            "SX",
                            "SC",
                            "SY",
                            "TC",
                            "TD",
                            "TG",
                            "TH",
                            "TJ",
                            "TK",
                            "TM",
                            "TL",
                            "TO",
                            "TT",
                            "TN",
                            "TR",
                            "TV",
                            "TW",
                            "TZ",
                            "UG",
                            "UA",
                            "UM",
                            "UY",
                            "US",
                            "UZ",
                            "VA",
                            "VC",
                            "VE",
                            "VG",
                            "VI",
                            "VN",
                            "VU",
                            "WF",
                            "WS",
                            "YE",
                            "ZA",
                            "ZM",
                            "ZW"
                          ],
                          "description": "ISO 3166-1 alpha-2"
                        },
                        "zip": {
                          "type": "string",
                          "minLength": 1
                        },
                        "locality": {
                          "type": "string",
                          "minLength": 1
                        }
                      }
                    }
                  }
                },
                "required": [
                  "userEmail"
                ],
                "description": "Request body for pre-supplying KYC data so the hosted form only asks for what is still missing. Send `userEmail` plus any subset of the provider-neutral KYC fields (name, birthdate, nationality, phone, employmentStatus, fundsOrigin, document, addresses, …) at the root; supplied fields are stored and skipped when the user later completes the hosted KYC form.",
                "example": {
                  "userEmail": "maria@example.com",
                  "firstName": "María",
                  "lastName": "González",
                  "phone": "+447700900123",
                  "birthdate": "1990-01-31",
                  "birthCountry": "ES",
                  "nationality": "ES",
                  "employmentStatus": "employed",
                  "profession": "24",
                  "fundsOrigin": "salary",
                  "accountPurpose": "currencyExchange",
                  "depositEstimation": {
                    "minimum": 0,
                    "maximum": 10000
                  },
                  "addresses": [
                    {
                      "street": "Calle Mayor 1",
                      "city": "Madrid",
                      "state": "Madrid",
                      "zip": "28001",
                      "country": "ES"
                    }
                  ]
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Profile data stored. Body matches **SaveKYCProfileResponse**; see `providedFields` and `missingFields`.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Whether the profile data was stored successfully."
                    },
                    "providedFields": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Required profile fields now present after this call."
                    },
                    "missingFields": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Required profile fields the user must still complete in the hosted KYC form."
                    }
                  },
                  "required": [
                    "success",
                    "providedFields",
                    "missingFields"
                  ],
                  "description": "Response from POST /v1/kyc/profile: which required fields are now present and which are still missing."
                }
              }
            }
          },
          "400": {
            "description": "Invalid profile data",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/kyc/data\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"userEmail\": \"maria@example.com\",\n      \"firstName\": \"María\",\n      \"lastName\": \"González\",\n      \"phone\": \"+447700900123\",\n      \"birthdate\": \"1990-01-31\",\n      \"birthCountry\": \"ES\",\n      \"nationality\": \"ES\",\n      \"employmentStatus\": \"employed\",\n      \"profession\": \"24\",\n      \"fundsOrigin\": \"salary\",\n      \"accountPurpose\": \"currencyExchange\",\n      \"depositEstimation\": {\n        \"minimum\": 0,\n        \"maximum\": 10000\n      },\n      \"addresses\": [\n        {\n          \"street\": \"Calle Mayor 1\",\n          \"city\": \"Madrid\",\n          \"state\": \"Madrid\",\n          \"zip\": \"28001\",\n          \"country\": \"ES\"\n        }\n      ]\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api.virtuabroker.com/v1/kyc/data\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"userEmail\": \"maria@example.com\",\n        \"firstName\": \"María\",\n        \"lastName\": \"González\",\n        \"phone\": \"+447700900123\",\n        \"birthdate\": \"1990-01-31\",\n        \"birthCountry\": \"ES\",\n        \"nationality\": \"ES\",\n        \"employmentStatus\": \"employed\",\n        \"profession\": \"24\",\n        \"fundsOrigin\": \"salary\",\n        \"accountPurpose\": \"currencyExchange\",\n        \"depositEstimation\": {\n            \"minimum\": 0,\n            \"maximum\": 10000\n        },\n        \"addresses\": [\n            {\n                \"street\": \"Calle Mayor 1\",\n                \"city\": \"Madrid\",\n                \"state\": \"Madrid\",\n                \"zip\": \"28001\",\n                \"country\": \"ES\"\n            }\n        ]\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api.virtuabroker.com/v1/kyc/data\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"userEmail\": \"maria@example.com\",\n  \"firstName\": \"María\",\n  \"lastName\": \"González\",\n  \"phone\": \"+447700900123\",\n  \"birthdate\": \"1990-01-31\",\n  \"birthCountry\": \"ES\",\n  \"nationality\": \"ES\",\n  \"employmentStatus\": \"employed\",\n  \"profession\": \"24\",\n  \"fundsOrigin\": \"salary\",\n  \"accountPurpose\": \"currencyExchange\",\n  \"depositEstimation\": {\n    \"minimum\": 0,\n    \"maximum\": 10000\n  },\n  \"addresses\": [\n    {\n      \"street\": \"Calle Mayor 1\",\n      \"city\": \"Madrid\",\n      \"state\": \"Madrid\",\n      \"zip\": \"28001\",\n      \"country\": \"ES\"\n    }\n  ]\n}'"
          }
        ]
      }
    },
    "/v1/kyc/{accountEmail}": {
      "get": {
        "summary": "Get KYC status by account email",
        "description": "Retrieves the KYC verification status for an account by email. The response also carries `accountId` — the id to use for account-scoped resources such as deposit methods, deposits, and orders. For individual users it equals the email; for organisation representatives it is the organisation account id.",
        "tags": [
          "KYC"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 254,
              "format": "email",
              "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
              "description": "Email address"
            },
            "required": true,
            "description": "Email address",
            "name": "accountEmail",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful retrieval of KYC status",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "status": {
                          "type": "string",
                          "enum": [
                            "PENDING",
                            "REVIEWING",
                            "IN_PROGRESS",
                            "APPROVED",
                            "REJECTED",
                            "NOT_AVAILABLE"
                          ]
                        },
                        "missingFields": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          }
                        },
                        "accountId": {
                          "type": "string",
                          "description": "Account id to use for account-scoped resources (deposit methods, deposits, orders). Equals the email for individual users; for organisation representatives it is the organisation account id. Absent when no account exists yet for this email."
                        }
                      },
                      "required": [
                        "status"
                      ]
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/kyc/account@example.com\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/kyc/account@example.com\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/kyc/account@example.com\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/kyc/status": {
      "get": {
        "summary": "Get KYC status (deprecated)",
        "description": "Deprecated: use GET /v1/kyc/{accountEmail} instead. Retrieves the KYC verification status for a user by query param.",
        "deprecated": true,
        "tags": [
          "KYC"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 254,
              "format": "email",
              "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
              "description": "User email"
            },
            "required": true,
            "description": "User email",
            "name": "userEmail",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful retrieval of KYC status",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "PENDING",
                        "REVIEWING",
                        "IN_PROGRESS",
                        "APPROVED",
                        "REJECTED",
                        "NOT_AVAILABLE"
                      ],
                      "description": "Status of the KYC"
                    },
                    "missingFields": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Identity fields still required by the workspace’s configured KYC provider before verification can complete. Empty/absent when nothing is outstanding."
                    },
                    "missingInfo": {
                      "type": "object",
                      "properties": {
                        "firstName": {
                          "type": "string",
                          "description": "First name"
                        },
                        "lastName": {
                          "type": "string",
                          "description": "Last name"
                        },
                        "email": {
                          "type": "string",
                          "description": "Email"
                        },
                        "phone": {
                          "type": "string",
                          "description": "Phone"
                        }
                      },
                      "description": "Missing info of the KYC"
                    },
                    "message": {
                      "type": "string",
                      "description": "Message of the KYC"
                    }
                  },
                  "required": [
                    "status"
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/kyc/status\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/kyc/status\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/kyc/status\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/openbanking/{orderId}": {
      "post": {
        "summary": "Create Openbanking payment",
        "description": "Creates a hosted open-banking payment session (Web Form) for an order or deposit. Amount, currency, and payee details are taken from the order or deposit. Provide the redirect URLs the hosted form should return to; a `language` code for the form UI is optional.",
        "tags": [
          "Openbanking"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "description": "ID of the order or deposit"
            },
            "required": true,
            "description": "ID of the order or deposit",
            "name": "orderId",
            "in": "path"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "orderId": {
                    "type": "string",
                    "minLength": 12,
                    "maxLength": 12,
                    "pattern": "^[A-Z0-9]{12}$",
                    "description": "ID of the order or deposit",
                    "examples": [
                      "01CLFXMT67II",
                      "2R7E5Y5KFXP8",
                      "4FWWRE3Y2URM"
                    ]
                  },
                  "language": {
                    "type": "string",
                    "description": "Language code for the form (e.g., en, de, es)"
                  },
                  "redirectUrl": {
                    "type": "string",
                    "maxLength": 2048,
                    "description": "Optional https URL to return the payer to after a successful payment. If omitted the hosted form auto-closes and status is learned by polling GET."
                  },
                  "errorRedirectUrl": {
                    "type": "string",
                    "maxLength": 2048,
                    "description": "Optional https URL to return the payer to when the payment errors."
                  },
                  "abortRedirectUrl": {
                    "type": "string",
                    "maxLength": 2048,
                    "description": "Optional https URL to return the payer to when they cancel the payment."
                  }
                },
                "required": [
                  "orderId"
                ],
                "description": "Request schema to initiate an open banking (PIS) Web Form for an order or deposit"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Openbanking payment creation",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "orderId": {
                      "type": "string",
                      "minLength": 12,
                      "maxLength": 12,
                      "pattern": "^[A-Z0-9]{12}$",
                      "description": "Order id or deposit id (field name is historical)",
                      "examples": [
                        "01CLFXMT67II",
                        "2R7E5Y5KFXP8",
                        "4FWWRE3Y2URM"
                      ]
                    },
                    "webForm": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "description": "Identifier for the hosted open-banking payment session"
                        },
                        "url": {
                          "type": "string",
                          "format": "uri",
                          "description": "URL where the end user completes the bank payment flow"
                        },
                        "status": {
                          "type": "string",
                          "description": "Session status (e.g. not started, in progress, completed, error, aborted, expired — exact values are provider-specific)"
                        },
                        "expiresAt": {
                          "type": "number",
                          "description": "Expiration timestamp (ms)"
                        }
                      },
                      "required": [
                        "id",
                        "url",
                        "status"
                      ]
                    },
                    "embed": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "enum": [
                            "standalone",
                            "embedded"
                          ],
                          "description": "Suggested integration type"
                        },
                        "suggested": {
                          "type": "boolean",
                          "description": "Whether embedded is suggested"
                        },
                        "instructions": {
                          "type": "string",
                          "description": "Short FE hints to render the form"
                        },
                        "embeddingOptions": {
                          "type": "object",
                          "properties": {
                            "iframe": {
                              "type": "object",
                              "properties": {
                                "description": {
                                  "type": "string",
                                  "description": "What this integration style does"
                                },
                                "code": {
                                  "type": "string",
                                  "description": "Copy-paste snippet for this style"
                                },
                                "recommended": {
                                  "type": "boolean",
                                  "description": "Whether this is the recommended style"
                                }
                              },
                              "required": [
                                "description",
                                "code",
                                "recommended"
                              ]
                            },
                            "redirect": {
                              "type": "object",
                              "properties": {
                                "description": {
                                  "type": "string",
                                  "description": "What this integration style does"
                                },
                                "code": {
                                  "type": "string",
                                  "description": "Copy-paste snippet for this style"
                                },
                                "recommended": {
                                  "type": "boolean",
                                  "description": "Whether this is the recommended style"
                                }
                              },
                              "required": [
                                "description",
                                "code",
                                "recommended"
                              ]
                            },
                            "popup": {
                              "type": "object",
                              "properties": {
                                "description": {
                                  "type": "string",
                                  "description": "What this integration style does"
                                },
                                "code": {
                                  "type": "string",
                                  "description": "Copy-paste snippet for this style"
                                },
                                "recommended": {
                                  "type": "boolean",
                                  "description": "Whether this is the recommended style"
                                }
                              },
                              "required": [
                                "description",
                                "code",
                                "recommended"
                              ]
                            }
                          },
                          "description": "Ready-to-use snippets for embedding the payment form, keyed by integration style."
                        },
                        "setupRequirements": {
                          "type": "object",
                          "properties": {
                            "cors": {
                              "type": "string",
                              "description": "What is needed for cross-origin embedding"
                            },
                            "webhooks": {
                              "type": "string",
                              "description": "What your webhook endpoint must support"
                            }
                          },
                          "required": [
                            "cors",
                            "webhooks"
                          ],
                          "description": "What you need in place before embedding the form."
                        }
                      },
                      "required": [
                        "type",
                        "suggested",
                        "instructions"
                      ],
                      "description": "Frontend guidance for rendering the Web Form"
                    },
                    "usage": {
                      "type": "object",
                      "properties": {
                        "standalone": {
                          "type": "object",
                          "properties": {
                            "description": {
                              "type": "string"
                            },
                            "url": {
                              "type": "string"
                            },
                            "instructions": {
                              "type": "string"
                            }
                          },
                          "required": [
                            "description",
                            "url",
                            "instructions"
                          ]
                        },
                        "embedded": {
                          "type": "object",
                          "properties": {
                            "description": {
                              "type": "string"
                            },
                            "options": {
                              "nullable": true
                            },
                            "setup": {
                              "nullable": true
                            }
                          },
                          "required": [
                            "description"
                          ]
                        }
                      },
                      "required": [
                        "standalone",
                        "embedded"
                      ],
                      "description": "Usage guidance and options"
                    }
                  },
                  "required": [
                    "orderId",
                    "webForm",
                    "embed",
                    "usage"
                  ],
                  "description": "Response schema after initiating an open banking Web Form"
                }
              }
            }
          },
          "400": {
            "description": "Bad request — invalid parameters or the banking session could not be created",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "error": {
                      "type": "string"
                    },
                    "details": {
                      "nullable": true
                    }
                  },
                  "required": [
                    "success",
                    "error"
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/openbanking/ord_7Ka9dP2x\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"orderId\": \"01CLFXMT67II\",\n      \"language\": \"string\",\n      \"redirectUrl\": \"string\",\n      \"errorRedirectUrl\": \"string\",\n      \"abortRedirectUrl\": \"string\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api.virtuabroker.com/v1/openbanking/ord_7Ka9dP2x\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"orderId\": \"01CLFXMT67II\",\n        \"language\": \"string\",\n        \"redirectUrl\": \"string\",\n        \"errorRedirectUrl\": \"string\",\n        \"abortRedirectUrl\": \"string\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api.virtuabroker.com/v1/openbanking/ord_7Ka9dP2x\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"orderId\": \"01CLFXMT67II\",\n  \"language\": \"string\",\n  \"redirectUrl\": \"string\",\n  \"errorRedirectUrl\": \"string\",\n  \"abortRedirectUrl\": \"string\"\n}'"
          }
        ]
      },
      "get": {
        "summary": "Get Openbanking payment status",
        "description": "Returns the status of an open-banking payment for a given order or deposit id (the same id used when creating the session). The response includes session status and, when available, the latest callback details.",
        "tags": [
          "Openbanking"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "description": "Order id or deposit id (query/path; same identifier used when creating the Web Form)"
            },
            "required": true,
            "description": "Order id or deposit id (query/path; same identifier used when creating the Web Form)",
            "name": "orderId",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful retrieval of OpenBanking payment status",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "orderId": {
                      "type": "string",
                      "description": "Order id or deposit id (field name is historical)"
                    },
                    "openbanking": {
                      "type": "object",
                      "properties": {
                        "webFormId": {
                          "type": "string"
                        },
                        "url": {
                          "type": "string"
                        },
                        "status": {
                          "type": "string"
                        },
                        "requestedAmount": {
                          "type": "number"
                        },
                        "currency": {
                          "type": "string"
                        },
                        "expiresAt": {
                          "type": "string"
                        },
                        "lastUpdated": {
                          "type": "string"
                        },
                        "webhookReceived": {
                          "type": "boolean"
                        },
                        "lastWebhook": {
                          "type": "object",
                          "nullable": true,
                          "properties": {
                            "timestamp": {
                              "type": "string"
                            },
                            "status": {
                              "type": "string"
                            },
                            "webFormId": {
                              "type": "string"
                            }
                          },
                          "required": [
                            "timestamp",
                            "status",
                            "webFormId"
                          ]
                        }
                      },
                      "required": [
                        "webFormId",
                        "url",
                        "status",
                        "requestedAmount",
                        "currency",
                        "expiresAt",
                        "lastUpdated",
                        "webhookReceived",
                        "lastWebhook"
                      ]
                    },
                    "metadata": {
                      "type": "object",
                      "properties": {
                        "createdAt": {
                          "type": "string",
                          "description": "When the open-banking session record was created"
                        },
                        "lastStatusCheck": {
                          "type": "string",
                          "description": "Timestamp of the last status refresh"
                        },
                        "callbackCount": {
                          "type": "number",
                          "description": "Number of callbacks recorded for this session"
                        }
                      },
                      "required": [
                        "createdAt",
                        "lastStatusCheck",
                        "callbackCount"
                      ]
                    },
                    "note": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "success",
                    "orderId",
                    "note"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Order/Deposit not found or no OpenBanking payment exists",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "orderId": {
                      "type": "string"
                    },
                    "note": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "success",
                    "orderId",
                    "note"
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "orderId": {
                      "type": "string"
                    },
                    "note": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "success",
                    "orderId",
                    "note"
                  ]
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/openbanking/ord_7Ka9dP2x\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/openbanking/ord_7Ka9dP2x\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/openbanking/ord_7Ka9dP2x\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/withdrawals": {
      "post": {
        "summary": "Create a withdrawal (payout from balance)",
        "description": "Creates a payout from the user's available balance. The balance is validated and reserved atomically before processing.\n\n**Payout paths:** (a) this endpoint pays out directly from an existing balance; (b) for a trade-then-payout flow use **POST /v1/orders** instead (quote → order with `destinationTransferData`).\n\n**`destinationTransferData.type`** must match the payout rail — representative values:\n- `SEPA` — EUR bank transfer (IBAN required).\n- `PIX_BR` — Brazilian PIX instant transfer; `BANK_DEPOSIT_BR` for TED/DOC.\n- `BANK_DEPOSIT_VEN` — Venezuelan bank transfer (account number + bank code + tax ID).\n- `PHONE_DEPOSIT_VEN` — Venezuelan phone-based payout (phone number + bank code + tax ID).\n- Crypto: use the network name as `type` (e.g. `MATIC`, `ETH`, `TRON`, `SOLANA`) with an `address` field. For Solana, `SOL` is accepted as an alias of `SOLANA`.\n- Schemas marked **deprecated** have no active payout corridor and are rejected; discover live corridors per currency via `GET /v1/currencies/{currency}/destination-schema`.\n\n",
        "tags": [
          "Withdrawals"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "pattern": "^[A-Za-z0-9][A-Za-z0-9_-]{0,127}$",
              "description": "Optional idempotency key: 1–128 characters of letters, digits, dash or underscore, starting with a letter or digit, sent exactly once. A present-but-malformed key is rejected with 400 before anything happens. Replaying the same key with the same payload returns the original response; reusing it with a different payload is rejected with 409. The withdrawal id is always server-generated and never derived from this key."
            },
            "required": false,
            "description": "Optional idempotency key: 1–128 characters of letters, digits, dash or underscore, starting with a letter or digit, sent exactly once. A present-but-malformed key is rejected with 400 before anything happens. Replaying the same key with the same payload returns the original response; reusing it with a different payload is rejected with 409. The withdrawal id is always server-generated and never derived from this key.",
            "name": "Idempotency-Key",
            "in": "header"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "exclusiveMinimum": true,
                    "description": "Amount to be withdrawn",
                    "example": 1000
                  },
                  "currency": {
                    "type": "string",
                    "description": "Currency of the withdrawal",
                    "example": "EUR"
                  },
                  "userEmail": {
                    "type": "string",
                    "format": "email",
                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                    "description": "Email of the user making the request",
                    "example": "user@example.com"
                  },
                  "destinationTranferId": {
                    "type": "string",
                    "description": "ID of the destination transfer method",
                    "example": "123"
                  },
                  "destinationTransferData": {
                    "oneOf": [
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "BALANCE"
                            ]
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "Balance transfer details",
                        "title": "Balance"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "iban": {
                            "type": "string",
                            "description": "IBAN number"
                          },
                          "bic": {
                            "type": "string",
                            "description": "BIC number (optional)"
                          },
                          "country": {
                            "type": "string",
                            "description": "Country code"
                          },
                          "accountType": {
                            "type": "string",
                            "enum": [
                              "PERSONAL",
                              "BUSINESS"
                            ],
                            "default": "PERSONAL",
                            "description": "Account type (optional)"
                          },
                          "city": {
                            "type": "string",
                            "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                          },
                          "postalCode": {
                            "type": "string",
                            "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                          },
                          "address": {
                            "type": "string",
                            "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "SEPA"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "iban",
                          "country",
                          "type"
                        ],
                        "description": "SEPA transfer details",
                        "title": "SEPA"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "UK bank account number"
                          },
                          "sortCode": {
                            "type": "string",
                            "description": "UK sort code"
                          },
                          "country": {
                            "type": "string",
                            "enum": [
                              "GB"
                            ],
                            "default": "GB",
                            "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                          },
                          "accountType": {
                            "type": "string",
                            "enum": [
                              "PERSONAL",
                              "BUSINESS"
                            ],
                            "default": "PERSONAL",
                            "description": "Account type (optional)"
                          },
                          "city": {
                            "type": "string",
                            "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                          },
                          "postalCode": {
                            "type": "string",
                            "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                          },
                          "address": {
                            "type": "string",
                            "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "GBP_BANK_TRANSFER"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "accountNumber",
                          "sortCode",
                          "type"
                        ],
                        "description": "GBP domestic bank transfer details",
                        "title": "BankDepositGB"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "accountNumber": {
                            "type": "string",
                            "description": "US bank account number"
                          },
                          "routingNumber": {
                            "type": "string",
                            "description": "US ABA routing number"
                          },
                          "country": {
                            "type": "string",
                            "enum": [
                              "US"
                            ],
                            "default": "US",
                            "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                          },
                          "accountType": {
                            "type": "string",
                            "enum": [
                              "PERSONAL",
                              "BUSINESS"
                            ],
                            "default": "PERSONAL",
                            "description": "Account type (optional)"
                          },
                          "bankAccountType": {
                            "type": "string",
                            "enum": [
                              "CHECKING",
                              "SAVINGS"
                            ],
                            "default": "CHECKING",
                            "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                          },
                          "city": {
                            "type": "string",
                            "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                          },
                          "postalCode": {
                            "type": "string",
                            "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                          },
                          "state": {
                            "type": "string",
                            "pattern": "^[A-Z]{2}$",
                            "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                          },
                          "address": {
                            "type": "string",
                            "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "ACH_US"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "accountNumber",
                          "routingNumber",
                          "state",
                          "type"
                        ],
                        "description": "USD ACH transfer details",
                        "title": "AchUS"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "linkedBankAccount"
                            ]
                          },
                          "accountLinkId": {
                            "type": "string",
                            "pattern": "^alnk_[0-9a-f]{24}$",
                            "description": "Identifier of one of the account holder own linked bank accounts",
                            "examples": [
                              "alnk_0123456789abcdef01234567"
                            ]
                          }
                        },
                        "required": [
                          "type",
                          "accountLinkId"
                        ],
                        "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                        "title": "LinkedBankAccount",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "ETH"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "ETH destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "ETH"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "MATIC"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "MATIC destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "MATIC"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "SOL"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "SOL destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "\\S"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "\\S"
                              }
                            }
                          }
                        ],
                        "title": "SOL"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "TRON"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "TRON destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "\\S"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "\\S"
                              }
                            }
                          }
                        ],
                        "title": "TRON"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "CELO"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "CELO destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "CELO"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "BTC"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "BTC destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "\\S"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "\\S"
                              }
                            }
                          }
                        ],
                        "title": "BTC"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "SOLANA"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "SOLANA destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "\\S"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "\\S"
                              }
                            }
                          }
                        ],
                        "title": "SOLANA"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "XRP"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "XRP destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "\\S"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "\\S"
                              }
                            }
                          }
                        ],
                        "title": "XRP"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "CARDANO"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "CARDANO destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "\\S"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "\\S"
                              }
                            }
                          }
                        ],
                        "title": "CARDANO"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "BSC"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "BSC destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "BSC"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "ARBITRUM"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "ARBITRUM destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "ARBITRUM"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "OPTIMISM"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "OPTIMISM destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "OPTIMISM"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "AVALANCHE"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "AVALANCHE destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "AVALANCHE"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "type": {
                            "type": "string",
                            "enum": [
                              "BASE"
                            ]
                          },
                          "address": {
                            "type": "string",
                            "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                          },
                          "memo": {
                            "type": "string",
                            "description": "Memo for the wallet, when the chain uses one"
                          },
                          "txId": {
                            "type": "string",
                            "description": "Blockchain transaction ID"
                          },
                          "txUrlScan": {
                            "type": "string",
                            "description": "Blockchain explorer URL for the transaction"
                          },
                          "destinationWalletAddress": {
                            "type": "string",
                            "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                          },
                          "destinationWalletMemo": {
                            "type": "string",
                            "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                          },
                          "destinationNetwork": {
                            "type": "string",
                            "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                          },
                          "destinationCurrencySymbol": {
                            "type": "string",
                            "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                          }
                        },
                        "required": [
                          "type"
                        ],
                        "description": "BASE destination details",
                        "anyOf": [
                          {
                            "required": [
                              "address"
                            ],
                            "properties": {
                              "address": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          },
                          {
                            "required": [
                              "destinationWalletAddress"
                            ],
                            "properties": {
                              "destinationWalletAddress": {
                                "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                              }
                            }
                          }
                        ],
                        "title": "BASE"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_COL"
                            ]
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name)."
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "description": "Bank account type — CORRIENTE or AHORRO."
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "Recipient ID document number."
                          },
                          "destinationDocumentType": {
                            "type": "string",
                            "description": "Recipient ID document type — CC, CE, NIT, TI or PP."
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type",
                          "destinationBankCode",
                          "destinationBankAccountType",
                          "destinationDocumentType",
                          "destinationTaxId"
                        ],
                        "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                        "title": "Bank Deposit COL"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "brebKey": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Bre-B key (llave) that identifies the recipient account"
                          },
                          "email": {
                            "type": "string",
                            "description": "Recipient email (optional contact for the Bre-B rail)"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Recipient phone number (optional contact for the Bre-B rail)"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BRE_B_COP"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "brebKey",
                          "type"
                        ],
                        "description": "Colombian Bre-B payout details",
                        "title": "Bre-B COP"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "pattern": "^\\d{4}$",
                            "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                          },
                          "destinationBankAccountNumber": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Recipient bank account number"
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                          },
                          "destinationDocumentType": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Recipient ID document number"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "ACH_COP"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankCode",
                          "destinationBankAccountNumber",
                          "destinationBankAccountType",
                          "destinationDocumentType",
                          "destinationTaxId",
                          "type"
                        ],
                        "description": "Colombian ACH payout details",
                        "title": "ACH COP"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (unused for TWD — no network discovery)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "minLength": 2,
                            "description": "Bank name (required — TWD payouts run over SWIFT)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_TW"
                            ]
                          },
                          "destinationBankBranch": {
                            "type": "string",
                            "minLength": 2,
                            "description": "Bank branch (required — TWD payouts run over SWIFT)"
                          },
                          "bic": {
                            "type": "string",
                            "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                            "description": "SWIFT BIC code (required for TWD payouts)"
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "description": "Type of bank account (legacy, optional)"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "Tax ID of the recipient (legacy, optional)"
                          },
                          "destinationDocumentType": {
                            "type": "string",
                            "description": "Document type of the recipient (legacy, optional)"
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "destinationBankName",
                          "type",
                          "destinationBankBranch",
                          "bic"
                        ],
                        "description": "Taiwan bank deposit details (SWIFT payout)",
                        "title": "Bank Deposit TW"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "description": "Bank code"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationBankBranch": {
                            "type": "string",
                            "description": "Bank branch"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "Tax ID of the recipient"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_BR"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankCode",
                          "destinationBankAccount",
                          "destinationBankBranch",
                          "destinationTaxId",
                          "type"
                        ],
                        "description": "Brazilian bank deposit details",
                        "title": "Bank Deposit BR"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPixCode": {
                            "type": "string",
                            "description": "PIX code"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "Tax ID of the recipient"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "PIX_BR"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPixCode",
                          "destinationTaxId",
                          "type"
                        ],
                        "description": "Brazilian PIX details",
                        "title": "PIX BR"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccountNumber": {
                            "type": "string",
                            "description": "Bank account number"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Name of the bank"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                            "description": "Tax ID of the recipient"
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "description": "Type of bank account"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_VEN"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccountNumber",
                          "destinationBankName",
                          "destinationTaxId",
                          "destinationBankAccountType",
                          "type"
                        ],
                        "description": "Venezuelan bank deposit details",
                        "title": "Bank Deposit VEN"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "description": "Bank code"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                            "description": "Tax ID of the recipient"
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "description": "Type of bank account"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "PHONE_DEPOSIT_VEN"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankCode",
                          "destinationPhoneNumber",
                          "destinationTaxId",
                          "destinationBankAccountType",
                          "type"
                        ],
                        "description": "Venezuelan phone deposit details",
                        "title": "Phone Deposit VEN"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationIFSC": {
                            "type": "string",
                            "description": "IFSC code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_IN"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Bank Deposit IN",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationIFSC": {
                            "type": "string",
                            "description": "IFSC code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "IMPS"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "IMPS",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationIFSC": {
                            "type": "string",
                            "description": "IFSC code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "THAI_QR"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Thai QR",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationIFSC": {
                            "type": "string",
                            "description": "IFSC code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "VIET_QR"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Viet QR",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationIFSC": {
                            "type": "string",
                            "description": "IFSC code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "GCASH"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "GCash",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "Tax ID"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_PAYMENT_IN"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "destinationTaxId",
                          "type"
                        ],
                        "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Mobile Payment IN",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "description": "Bank code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_VN"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "destinationBankCode",
                          "type"
                        ],
                        "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Bank Deposit VN",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "bic": {
                            "type": "string",
                            "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "destinationAddress": {
                            "type": "string",
                            "description": "Address line 1 of the recipient"
                          },
                          "destinationCity": {
                            "type": "string",
                            "description": "Recipient city (defaults to Hong Kong)"
                          },
                          "accountHolderName": {
                            "type": "string",
                            "description": "Bank account holder name if different from payee"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_HK"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "bic",
                          "destinationBankName",
                          "destinationAddress",
                          "type"
                        ],
                        "description": "Hong Kong bank deposit details (HKD bank corridor)",
                        "title": "Bank Deposit HK"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "pattern": "^\\d+$",
                            "description": "CNAPS / bank institution code (numeric, variable length)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name"
                          },
                          "destinationAddress": {
                            "type": "string",
                            "description": "Address line 1 of the recipient"
                          },
                          "destinationCity": {
                            "type": "string",
                            "description": "Recipient city"
                          },
                          "destinationState": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                          },
                          "destinationPostcode": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                          },
                          "destinationPhone": {
                            "type": "string",
                            "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                          },
                          "accountHolderName": {
                            "type": "string",
                            "description": "Bank account holder name if different from payee"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_CN"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "destinationBankCode",
                          "destinationBankName",
                          "destinationAddress",
                          "destinationCity",
                          "destinationState",
                          "destinationPostcode",
                          "type"
                        ],
                        "description": "China mainland bank deposit details (CNY bank corridor)",
                        "title": "Bank Deposit CN"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_AR"
                            ]
                          },
                          "destinationCBU": {
                            "type": "string",
                            "description": "CBU — 22-digit bank account key (legacy, optional)"
                          },
                          "destinationCVU": {
                            "type": "string",
                            "description": "CVU — 22-digit virtual account key (legacy, optional)"
                          },
                          "destinationAlias": {
                            "type": "string",
                            "description": "Account alias (legacy, optional)"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                          },
                          "destinationDocumentType": {
                            "type": "string",
                            "description": "Document type of the recipient (legacy, optional)"
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type",
                          "destinationTaxId"
                        ],
                        "description": "Argentinian bank deposit details",
                        "title": "Bank Deposit AR"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Recipient bank name (required for Chilean bank payouts)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_CL"
                            ]
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "minLength": 1,
                            "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                          },
                          "destinationDocumentType": {
                            "type": "string",
                            "description": "Document type of the recipient (legacy, optional)"
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "destinationBankName",
                          "type",
                          "destinationBankAccountType",
                          "destinationTaxId"
                        ],
                        "description": "Chilean bank deposit details",
                        "title": "Bank Deposit CL"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "minLength": 2,
                            "maxLength": 30,
                            "description": "Recipient name (required, 2–30 characters)"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 11,
                            "description": "Bank account number (max 11 digits for Bolivian accounts)"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (unused for BOB — no network discovery)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "maxLength": 20,
                            "description": "Bank name (optional, max 20 characters)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_BO"
                            ]
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 15,
                            "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type",
                          "destinationTaxId"
                        ],
                        "description": "Bolivian bank deposit details",
                        "title": "Bank Deposit BO"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_PE"
                            ]
                          },
                          "destinationCCI": {
                            "type": "string",
                            "description": "CCI — 20-digit interbank account code (legacy, optional)"
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "description": "Account type (corriente/ahorro) (legacy, optional)"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                          },
                          "destinationDocumentType": {
                            "type": "string",
                            "description": "Document type of the recipient (legacy, optional)"
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "destinationNetworkId",
                          "type"
                        ],
                        "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Bank Deposit PE",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "pattern": "^\\d{3}$",
                            "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                          },
                          "destinationBankAccountNumber": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 20,
                            "description": "Recipient bank account number (max 20)"
                          },
                          "destinationBankAccountType": {
                            "type": "string",
                            "enum": [
                              "CORRIENTE",
                              "AHORROS",
                              "PHONE"
                            ],
                            "description": "Bank account type"
                          },
                          "destinationCCI": {
                            "type": "string",
                            "pattern": "^\\d{1,20}$",
                            "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                          },
                          "destinationDocumentType": {
                            "type": "string",
                            "enum": [
                              "CC",
                              "CE",
                              "RUC",
                              "PAS",
                              "PAR",
                              "LMI",
                              "OTHER"
                            ],
                            "description": "Recipient identification type"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 50,
                            "description": "Recipient identification number (max 50)"
                          },
                          "email": {
                            "type": "string",
                            "pattern": "^.+@.+\\..+$",
                            "description": "Recipient email (required for PEN payouts)"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "pattern": "^\\d{1,9}$",
                            "description": "Recipient phone number (required, max 9 digits)"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_PEN"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankCode",
                          "destinationBankAccountNumber",
                          "destinationBankAccountType",
                          "destinationCCI",
                          "destinationDocumentType",
                          "destinationTaxId",
                          "email",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Peruvian bank deposit details (bank-code payout corridor).",
                        "title": "Bank Deposit PEN"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_NG"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Nigeria bank deposit details",
                        "title": "Bank Deposit NG"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_KE"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Kenya bank deposit details",
                        "title": "Bank Deposit KE"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_GH"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Bank Deposit GH",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_ZA"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "South Africa bank deposit details",
                        "title": "Bank Deposit ZA"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_TZ"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Tanzania bank deposit details",
                        "title": "Bank Deposit TZ"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_UG"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Uganda bank deposit details",
                        "title": "Bank Deposit UG"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_RW"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Rwanda bank deposit details",
                        "title": "Bank Deposit RW"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_MW"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Malawi bank deposit details",
                        "title": "Bank Deposit MW"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_ZM"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Zambia bank deposit details",
                        "title": "Bank Deposit ZM"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_BW"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Botswana bank deposit details",
                        "title": "Bank Deposit BW"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_CD"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Bank Deposit CD",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_XOF"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "West African CFA bank deposit details",
                        "title": "Bank Deposit XOF"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankAccount": {
                            "type": "string",
                            "description": "Bank account"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationBankName is given)"
                          },
                          "destinationBankName": {
                            "type": "string",
                            "description": "Bank name (used to resolve the network when id is omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_XAF"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccount",
                          "type"
                        ],
                        "description": "Central African CFA bank deposit details",
                        "title": "Bank Deposit XAF"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_NG"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Nigeria mobile money details",
                        "title": "Mobile Money NG"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_KE"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Kenya mobile money details",
                        "title": "Mobile Money KE"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_GH"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Mobile Money GH",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_ZA"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "South Africa mobile money details",
                        "title": "Mobile Money ZA"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_TZ"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Tanzania mobile money details",
                        "title": "Mobile Money TZ"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_UG"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Uganda mobile money details",
                        "title": "Mobile Money UG"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_RW"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Rwanda mobile money details",
                        "title": "Mobile Money RW"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_MW"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Malawi mobile money details",
                        "title": "Mobile Money MW"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_ZM"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Zambia mobile money details",
                        "title": "Mobile Money ZM"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_BW"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Botswana mobile money details",
                        "title": "Mobile Money BW"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_CD"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "Mobile Money CD",
                        "deprecated": true
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_XOF"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "West African CFA mobile money details",
                        "title": "Mobile Money XOF"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPhoneNumber": {
                            "type": "string",
                            "description": "Phone number"
                          },
                          "destinationNetworkId": {
                            "type": "string",
                            "description": "Payout network id (optional if destinationNetworkName is given)"
                          },
                          "destinationNetworkName": {
                            "type": "string",
                            "description": "Mobile money network name (resolves the network when id omitted)"
                          },
                          "country": {
                            "type": "string",
                            "description": "ISO 3166 country code"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "MOBILE_MONEY_XAF"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPhoneNumber",
                          "type"
                        ],
                        "description": "Central African CFA mobile money details",
                        "title": "Mobile Money XAF"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationBankCode": {
                            "type": "string",
                            "description": "Bank code"
                          },
                          "destinationBankAccountNumber": {
                            "type": "string",
                            "description": "Bank account number (18-digit CLABE)"
                          },
                          "numericReference": {
                            "type": "string",
                            "description": "Numeric reference"
                          },
                          "notesReference": {
                            "type": "string",
                            "description": "Notes reference"
                          },
                          "destinationClabe": {
                            "type": "string",
                            "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                          },
                          "destinationTaxId": {
                            "type": "string",
                            "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "BANK_DEPOSIT_MX"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationBankAccountNumber",
                          "type"
                        ],
                        "description": "Mexican bank deposit details",
                        "title": "Bank Deposit MX"
                      },
                      {
                        "type": "object",
                        "properties": {
                          "destinationName": {
                            "type": "string",
                            "description": "Name of the recipient"
                          },
                          "destinationPseNumber": {
                            "type": "string",
                            "description": "PSE number"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "PSE"
                            ]
                          }
                        },
                        "required": [
                          "destinationName",
                          "destinationPseNumber",
                          "type"
                        ],
                        "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                        "title": "PSE",
                        "deprecated": true
                      }
                    ],
                    "description": "Payout destination details. The `type` field selects the rail. Representative values: `SEPA` (EUR bank, requires IBAN), `PIX_BR` (Brazilian PIX instant), `BANK_DEPOSIT_VEN` (Venezuelan bank transfer — account number, bank code, tax ID), `PHONE_DEPOSIT_VEN` (Venezuelan phone-based payout — phone number, bank code, tax ID), `MATIC` / `ETH` / `TRON` (crypto wallet with `address` field). Use GET /v1/currencies to discover available rails and their required fields. Either this field or `destinationTranferId` must be provided.",
                    "title": "WithdrawalInfo",
                    "example": {
                      "type": "SEPA",
                      "destinationName": "John Doe",
                      "iban": "ES9121000418450200051332",
                      "bic": "CAIXESBBXXX",
                      "country": "ES",
                      "address": "Calle Mayor 1"
                    }
                  },
                  "beneficiary": {
                    "type": "object",
                    "properties": {
                      "name": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 140
                      },
                      "surname": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 140
                      },
                      "relationship": {
                        "type": "string",
                        "enum": [
                          "third_party"
                        ]
                      }
                    },
                    "required": [
                      "name",
                      "surname",
                      "relationship"
                    ],
                    "additionalProperties": false,
                    "description": "Declare the destination owner when the payout is NOT to the holder’s own wallet. Omit for own-wallet payouts."
                  }
                },
                "required": [
                  "amount",
                  "currency",
                  "userEmail"
                ],
                "description": "Request schema for creating a withdrawal"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful withdrawal creation",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "withdrawalId": {
                      "anyOf": [
                        {
                          "type": "string",
                          "minLength": 12,
                          "maxLength": 12,
                          "pattern": "^[A-Z0-9]{12}$",
                          "examples": [
                            "01CLFXMT67II",
                            "2R7E5Y5KFXP8",
                            "4FWWRE3Y2URM"
                          ]
                        },
                        {
                          "type": "string",
                          "format": "uuid"
                        }
                      ],
                      "description": "ID of the withdrawal"
                    },
                    "userData": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "userType": {
                              "type": "string",
                              "enum": [
                                "individual"
                              ]
                            },
                            "firstName": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 50,
                              "description": "First name of the user making the deposit (or representative for business)",
                              "examples": [
                                "John",
                                "Alice",
                                "Bob"
                              ]
                            },
                            "lastName": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 100,
                              "description": "Last name of the user making the deposit (or representative for business)",
                              "examples": [
                                "Doe",
                                "Smith",
                                "Johnson"
                              ]
                            },
                            "userEmail": {
                              "type": "string",
                              "maxLength": 254,
                              "format": "email",
                              "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                              "description": "Email of the user making the deposit",
                              "examples": [
                                "user@virtuabroker.com",
                                "john.doe@example.com",
                                "alice@example.com"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "maxLength": 150,
                              "description": "Address of the user making the deposit",
                              "examples": [
                                "123 Main St, Anytown, ES",
                                "456 Elm St, Anytown, ES",
                                "789 Oak St, Anytown, ES"
                              ]
                            },
                            "taxDocumentType": {
                              "type": "string",
                              "maxLength": 50,
                              "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                              "examples": [
                                "CC",
                                "NIT",
                                "CE",
                                "NIF",
                                "Other"
                              ]
                            },
                            "taxId": {
                              "type": "string",
                              "maxLength": 30,
                              "description": "Tax ID of the user making the deposit",
                              "examples": [
                                "123-45-6789",
                                "987-65-4321",
                                "111-22-3333"
                              ]
                            },
                            "country": {
                              "type": "string",
                              "enum": [
                                "US",
                                "CA",
                                "GB",
                                "DE",
                                "FR",
                                "AU",
                                "JP",
                                "KR",
                                "SE",
                                "NO",
                                "DK",
                                "FI",
                                "NL",
                                "BE",
                                "CH",
                                "AT",
                                "NZ",
                                "SG",
                                "IE",
                                "LU",
                                "PT",
                                "ES",
                                "IT",
                                "GR",
                                "CZ",
                                "PL",
                                "HU",
                                "SK",
                                "SI",
                                "EE",
                                "LT",
                                "LV",
                                "IS",
                                "MT",
                                "CY",
                                "HR",
                                "RO",
                                "BG",
                                "BR",
                                "AR",
                                "CL",
                                "MX",
                                "CO",
                                "PE",
                                "PA",
                                "UY",
                                "BO",
                                "ZA",
                                "NG",
                                "KE",
                                "GH",
                                "TZ",
                                "UG",
                                "RW",
                                "MW",
                                "ZM",
                                "BW",
                                "CD",
                                "CI",
                                "CM",
                                "IL",
                                "AE",
                                "QA",
                                "SA",
                                "OM",
                                "KW",
                                "BH",
                                "MY",
                                "PH",
                                "TH",
                                "VN",
                                "ID",
                                "IN",
                                "LK",
                                "NP",
                                "BD",
                                "PK",
                                "EG",
                                "MA",
                                "DZ",
                                "TN",
                                "JO",
                                "LB",
                                "TR",
                                "KH",
                                "MM",
                                "LA",
                                "EN",
                                "BT",
                                "VE",
                                "TW",
                                "HK",
                                "CN"
                              ],
                              "description": "Country code of the user making the deposit",
                              "examples": [
                                "ES",
                                "US",
                                "GB"
                              ]
                            },
                            "state": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 100,
                              "description": "State of the user making the deposit",
                              "examples": [
                                "Madrid",
                                "New York",
                                "London"
                              ]
                            },
                            "postalCode": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 30,
                              "description": "Postal code of the user making the deposit",
                              "examples": [
                                "12345",
                                "67890",
                                "abcde"
                              ]
                            },
                            "city": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 100,
                              "description": "City of the user making the deposit",
                              "examples": [
                                "Madrid",
                                "New York",
                                "London"
                              ]
                            },
                            "dob": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 30,
                              "description": "Date of birth of the user making the deposit",
                              "examples": [
                                "1990-01-01",
                                "1995-05-15",
                                "1988-12-31"
                              ]
                            },
                            "phoneNumber": {
                              "type": "string",
                              "maxLength": 30,
                              "description": "Phone number of the user making the deposit",
                              "examples": [
                                "+447700900123",
                                "+447700900456",
                                "+447700900789"
                              ]
                            },
                            "kycId": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 300,
                              "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                              "examples": [
                                "kyc-12345",
                                "kyc-67890",
                                "kyc-abcde"
                              ]
                            },
                            "activity": {
                              "type": "string",
                              "description": "Activity of the user making the deposit",
                              "examples": [
                                "worker",
                                "business",
                                "student"
                              ]
                            }
                          },
                          "required": [
                            "userType",
                            "firstName",
                            "userEmail",
                            "country"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "userType": {
                              "type": "string",
                              "enum": [
                                "business"
                              ]
                            },
                            "businessName": {
                              "type": "string",
                              "maxLength": 150,
                              "description": "Business name (required when userType is business)",
                              "examples": [
                                "Acme Corp",
                                "Tech Solutions Inc",
                                "Global Services Ltd"
                              ]
                            },
                            "firstName": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 50,
                              "description": "First name of the user making the deposit (or representative for business)",
                              "examples": [
                                "John",
                                "Alice",
                                "Bob"
                              ]
                            },
                            "userEmail": {
                              "type": "string",
                              "maxLength": 254,
                              "format": "email",
                              "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                              "description": "Email of the user making the deposit",
                              "examples": [
                                "user@virtuabroker.com",
                                "john.doe@example.com",
                                "alice@example.com"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "maxLength": 150,
                              "description": "Address of the user making the deposit",
                              "examples": [
                                "123 Main St, Anytown, ES",
                                "456 Elm St, Anytown, ES",
                                "789 Oak St, Anytown, ES"
                              ]
                            },
                            "taxDocumentType": {
                              "type": "string",
                              "maxLength": 50,
                              "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                              "examples": [
                                "CC",
                                "NIT",
                                "CE",
                                "NIF",
                                "Other"
                              ]
                            },
                            "taxId": {
                              "type": "string",
                              "maxLength": 30,
                              "description": "Tax ID of the user making the deposit",
                              "examples": [
                                "123-45-6789",
                                "987-65-4321",
                                "111-22-3333"
                              ]
                            },
                            "country": {
                              "type": "string",
                              "enum": [
                                "US",
                                "CA",
                                "GB",
                                "DE",
                                "FR",
                                "AU",
                                "JP",
                                "KR",
                                "SE",
                                "NO",
                                "DK",
                                "FI",
                                "NL",
                                "BE",
                                "CH",
                                "AT",
                                "NZ",
                                "SG",
                                "IE",
                                "LU",
                                "PT",
                                "ES",
                                "IT",
                                "GR",
                                "CZ",
                                "PL",
                                "HU",
                                "SK",
                                "SI",
                                "EE",
                                "LT",
                                "LV",
                                "IS",
                                "MT",
                                "CY",
                                "HR",
                                "RO",
                                "BG",
                                "BR",
                                "AR",
                                "CL",
                                "MX",
                                "CO",
                                "PE",
                                "PA",
                                "UY",
                                "BO",
                                "ZA",
                                "NG",
                                "KE",
                                "GH",
                                "TZ",
                                "UG",
                                "RW",
                                "MW",
                                "ZM",
                                "BW",
                                "CD",
                                "CI",
                                "CM",
                                "IL",
                                "AE",
                                "QA",
                                "SA",
                                "OM",
                                "KW",
                                "BH",
                                "MY",
                                "PH",
                                "TH",
                                "VN",
                                "ID",
                                "IN",
                                "LK",
                                "NP",
                                "BD",
                                "PK",
                                "EG",
                                "MA",
                                "DZ",
                                "TN",
                                "JO",
                                "LB",
                                "TR",
                                "KH",
                                "MM",
                                "LA",
                                "EN",
                                "BT",
                                "VE",
                                "TW",
                                "HK",
                                "CN"
                              ],
                              "description": "Country code of the user making the deposit",
                              "examples": [
                                "ES",
                                "US",
                                "GB"
                              ]
                            },
                            "state": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 100,
                              "description": "State of the user making the deposit",
                              "examples": [
                                "Madrid",
                                "New York",
                                "London"
                              ]
                            },
                            "postalCode": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 30,
                              "description": "Postal code of the user making the deposit",
                              "examples": [
                                "12345",
                                "67890",
                                "abcde"
                              ]
                            },
                            "city": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 100,
                              "description": "City of the user making the deposit",
                              "examples": [
                                "Madrid",
                                "New York",
                                "London"
                              ]
                            },
                            "dob": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 30,
                              "description": "Date of birth of the user making the deposit",
                              "examples": [
                                "1990-01-01",
                                "1995-05-15",
                                "1988-12-31"
                              ]
                            },
                            "phoneNumber": {
                              "type": "string",
                              "maxLength": 30,
                              "description": "Phone number of the user making the deposit",
                              "examples": [
                                "+447700900123",
                                "+447700900456",
                                "+447700900789"
                              ]
                            },
                            "kycId": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 300,
                              "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                              "examples": [
                                "kyc-12345",
                                "kyc-67890",
                                "kyc-abcde"
                              ]
                            },
                            "activity": {
                              "type": "string",
                              "description": "Activity of the user making the deposit",
                              "examples": [
                                "worker",
                                "business",
                                "student"
                              ]
                            }
                          },
                          "required": [
                            "userType",
                            "businessName",
                            "firstName",
                            "userEmail",
                            "country"
                          ]
                        }
                      ],
                      "description": "User data for the withdrawal"
                    },
                    "createdAt": {
                      "type": "number",
                      "description": "Creation time of the withdrawal",
                      "example": 1723027132
                    },
                    "updatedAt": {
                      "type": "number",
                      "description": "Last update time of the withdrawal",
                      "example": 1723027132
                    },
                    "userEmail": {
                      "type": "string",
                      "format": "email",
                      "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                      "description": "Email of the user making the request",
                      "example": "user@example.com"
                    },
                    "amount": {
                      "type": "number",
                      "description": "Amount to be withdrawn. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
                      "example": 1000
                    },
                    "currency": {
                      "type": "string",
                      "description": "Currency of the withdrawal",
                      "example": "EUR"
                    },
                    "fee": {
                      "type": "number",
                      "description": "Fee for the withdrawal. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
                      "example": 10
                    },
                    "feeCurrency": {
                      "type": "string",
                      "description": "Currency of the fee",
                      "example": "EUR"
                    },
                    "destinationTransferData": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "BALANCE"
                              ]
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "Balance transfer details",
                          "title": "Balance"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "iban": {
                              "type": "string",
                              "description": "IBAN number"
                            },
                            "bic": {
                              "type": "string",
                              "description": "BIC number (optional)"
                            },
                            "country": {
                              "type": "string",
                              "description": "Country code"
                            },
                            "accountType": {
                              "type": "string",
                              "enum": [
                                "PERSONAL",
                                "BUSINESS"
                              ],
                              "default": "PERSONAL",
                              "description": "Account type (optional)"
                            },
                            "city": {
                              "type": "string",
                              "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                            },
                            "postalCode": {
                              "type": "string",
                              "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                            },
                            "address": {
                              "type": "string",
                              "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "SEPA"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "iban",
                            "country",
                            "type"
                          ],
                          "description": "SEPA transfer details",
                          "title": "SEPA"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "UK bank account number"
                            },
                            "sortCode": {
                              "type": "string",
                              "description": "UK sort code"
                            },
                            "country": {
                              "type": "string",
                              "enum": [
                                "GB"
                              ],
                              "default": "GB",
                              "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                            },
                            "accountType": {
                              "type": "string",
                              "enum": [
                                "PERSONAL",
                                "BUSINESS"
                              ],
                              "default": "PERSONAL",
                              "description": "Account type (optional)"
                            },
                            "city": {
                              "type": "string",
                              "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                            },
                            "postalCode": {
                              "type": "string",
                              "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                            },
                            "address": {
                              "type": "string",
                              "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "GBP_BANK_TRANSFER"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "accountNumber",
                            "sortCode",
                            "type"
                          ],
                          "description": "GBP domestic bank transfer details",
                          "title": "BankDepositGB"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "US bank account number"
                            },
                            "routingNumber": {
                              "type": "string",
                              "description": "US ABA routing number"
                            },
                            "country": {
                              "type": "string",
                              "enum": [
                                "US"
                              ],
                              "default": "US",
                              "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                            },
                            "accountType": {
                              "type": "string",
                              "enum": [
                                "PERSONAL",
                                "BUSINESS"
                              ],
                              "default": "PERSONAL",
                              "description": "Account type (optional)"
                            },
                            "bankAccountType": {
                              "type": "string",
                              "enum": [
                                "CHECKING",
                                "SAVINGS"
                              ],
                              "default": "CHECKING",
                              "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                            },
                            "city": {
                              "type": "string",
                              "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                            },
                            "postalCode": {
                              "type": "string",
                              "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                            },
                            "state": {
                              "type": "string",
                              "pattern": "^[A-Z]{2}$",
                              "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                            },
                            "address": {
                              "type": "string",
                              "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "ACH_US"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "accountNumber",
                            "routingNumber",
                            "state",
                            "type"
                          ],
                          "description": "USD ACH transfer details",
                          "title": "AchUS"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "linkedBankAccount"
                              ]
                            },
                            "accountLinkId": {
                              "type": "string",
                              "pattern": "^alnk_[0-9a-f]{24}$",
                              "description": "Identifier of one of the account holder own linked bank accounts",
                              "examples": [
                                "alnk_0123456789abcdef01234567"
                              ]
                            }
                          },
                          "required": [
                            "type",
                            "accountLinkId"
                          ],
                          "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                          "title": "LinkedBankAccount",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "ETH"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "ETH destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "ETH"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "MATIC"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "MATIC destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "MATIC"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "SOL"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "SOL destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "\\S"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "\\S"
                                }
                              }
                            }
                          ],
                          "title": "SOL"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "TRON"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "TRON destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "\\S"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "\\S"
                                }
                              }
                            }
                          ],
                          "title": "TRON"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "CELO"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "CELO destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "CELO"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "BTC"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "BTC destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "\\S"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "\\S"
                                }
                              }
                            }
                          ],
                          "title": "BTC"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "SOLANA"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "SOLANA destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "\\S"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "\\S"
                                }
                              }
                            }
                          ],
                          "title": "SOLANA"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "XRP"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "XRP destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "\\S"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "\\S"
                                }
                              }
                            }
                          ],
                          "title": "XRP"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "CARDANO"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "CARDANO destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "\\S"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "\\S"
                                }
                              }
                            }
                          ],
                          "title": "CARDANO"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "BSC"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "BSC destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "BSC"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "ARBITRUM"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "ARBITRUM destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "ARBITRUM"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "OPTIMISM"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "OPTIMISM destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "OPTIMISM"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "AVALANCHE"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "AVALANCHE destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "AVALANCHE"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "BASE"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "BASE destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "BASE"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_COL"
                              ]
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "Recipient ID document number. Required when creating or updating a destination."
                            },
                            "destinationDocumentType": {
                              "type": "string",
                              "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                          "title": "Bank Deposit COL"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "brebKey": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Bre-B key (llave) that identifies the recipient account"
                            },
                            "email": {
                              "type": "string",
                              "description": "Recipient email (optional contact for the Bre-B rail)"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Recipient phone number (optional contact for the Bre-B rail)"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BRE_B_COP"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "brebKey",
                            "type"
                          ],
                          "description": "Colombian Bre-B payout details",
                          "title": "Bre-B COP"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "pattern": "^\\d{4}$",
                              "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                            },
                            "destinationBankAccountNumber": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Recipient bank account number"
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                            },
                            "destinationDocumentType": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Recipient ID document number"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "ACH_COP"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankCode",
                            "destinationBankAccountNumber",
                            "destinationBankAccountType",
                            "destinationDocumentType",
                            "destinationTaxId",
                            "type"
                          ],
                          "description": "Colombian ACH payout details",
                          "title": "ACH COP"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (unused for TWD — no network discovery)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "minLength": 2,
                              "description": "Bank name (required — TWD payouts run over SWIFT)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_TW"
                              ]
                            },
                            "destinationBankBranch": {
                              "type": "string",
                              "minLength": 2,
                              "description": "Bank branch (required — TWD payouts run over SWIFT)"
                            },
                            "bic": {
                              "type": "string",
                              "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                              "description": "SWIFT BIC code (required for TWD payouts)"
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "description": "Type of bank account (legacy, optional)"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "Tax ID of the recipient (legacy, optional)"
                            },
                            "destinationDocumentType": {
                              "type": "string",
                              "description": "Document type of the recipient (legacy, optional)"
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "destinationBankName",
                            "type",
                            "destinationBankBranch",
                            "bic"
                          ],
                          "description": "Taiwan bank deposit details (SWIFT payout)",
                          "title": "Bank Deposit TW"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "description": "Bank code"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationBankBranch": {
                              "type": "string",
                              "description": "Bank branch"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "Tax ID of the recipient"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_BR"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankCode",
                            "destinationBankAccount",
                            "destinationBankBranch",
                            "destinationTaxId",
                            "type"
                          ],
                          "description": "Brazilian bank deposit details",
                          "title": "Bank Deposit BR"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPixCode": {
                              "type": "string",
                              "description": "PIX code"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "Tax ID of the recipient"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "PIX_BR"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPixCode",
                            "destinationTaxId",
                            "type"
                          ],
                          "description": "Brazilian PIX details",
                          "title": "PIX BR"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccountNumber": {
                              "type": "string",
                              "description": "Bank account number"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Name of the bank"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                              "description": "Tax ID of the recipient"
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "description": "Type of bank account"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_VEN"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccountNumber",
                            "destinationBankName",
                            "destinationTaxId",
                            "destinationBankAccountType",
                            "type"
                          ],
                          "description": "Venezuelan bank deposit details",
                          "title": "Bank Deposit VEN"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "description": "Bank code"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                              "description": "Tax ID of the recipient"
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "description": "Type of bank account"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "PHONE_DEPOSIT_VEN"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankCode",
                            "destinationPhoneNumber",
                            "destinationTaxId",
                            "destinationBankAccountType",
                            "type"
                          ],
                          "description": "Venezuelan phone deposit details",
                          "title": "Phone Deposit VEN"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationIFSC": {
                              "type": "string",
                              "description": "IFSC code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_IN"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Bank Deposit IN",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationIFSC": {
                              "type": "string",
                              "description": "IFSC code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "IMPS"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "IMPS",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationIFSC": {
                              "type": "string",
                              "description": "IFSC code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "THAI_QR"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Thai QR",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationIFSC": {
                              "type": "string",
                              "description": "IFSC code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "VIET_QR"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Viet QR",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationIFSC": {
                              "type": "string",
                              "description": "IFSC code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "GCASH"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "GCash",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "Tax ID"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_PAYMENT_IN"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "destinationTaxId",
                            "type"
                          ],
                          "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Mobile Payment IN",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "description": "Bank code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_VN"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "destinationBankCode",
                            "type"
                          ],
                          "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Bank Deposit VN",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "bic": {
                              "type": "string",
                              "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "destinationAddress": {
                              "type": "string",
                              "description": "Address line 1 of the recipient"
                            },
                            "destinationCity": {
                              "type": "string",
                              "description": "Recipient city (defaults to Hong Kong)"
                            },
                            "accountHolderName": {
                              "type": "string",
                              "description": "Bank account holder name if different from payee"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_HK"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "bic",
                            "destinationBankName",
                            "destinationAddress",
                            "type"
                          ],
                          "description": "Hong Kong bank deposit details (HKD bank corridor)",
                          "title": "Bank Deposit HK"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "pattern": "^\\d+$",
                              "description": "CNAPS / bank institution code (numeric, variable length)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "destinationAddress": {
                              "type": "string",
                              "description": "Address line 1 of the recipient"
                            },
                            "destinationCity": {
                              "type": "string",
                              "description": "Recipient city"
                            },
                            "destinationState": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                            },
                            "destinationPostcode": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                            },
                            "destinationPhone": {
                              "type": "string",
                              "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                            },
                            "accountHolderName": {
                              "type": "string",
                              "description": "Bank account holder name if different from payee"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_CN"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "destinationBankCode",
                            "destinationBankName",
                            "destinationAddress",
                            "destinationCity",
                            "destinationState",
                            "destinationPostcode",
                            "type"
                          ],
                          "description": "China mainland bank deposit details (CNY bank corridor)",
                          "title": "Bank Deposit CN"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_AR"
                              ]
                            },
                            "destinationCBU": {
                              "type": "string",
                              "description": "CBU — 22-digit bank account key (legacy, optional)"
                            },
                            "destinationCVU": {
                              "type": "string",
                              "description": "CVU — 22-digit virtual account key (legacy, optional)"
                            },
                            "destinationAlias": {
                              "type": "string",
                              "description": "Account alias (legacy, optional)"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                            },
                            "destinationDocumentType": {
                              "type": "string",
                              "description": "Document type of the recipient (legacy, optional)"
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Argentinian bank deposit details",
                          "title": "Bank Deposit AR"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Recipient bank name (required for Chilean bank payouts)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_CL"
                              ]
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "minLength": 1,
                              "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                            },
                            "destinationDocumentType": {
                              "type": "string",
                              "description": "Document type of the recipient (legacy, optional)"
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "destinationBankName",
                            "type",
                            "destinationBankAccountType",
                            "destinationTaxId"
                          ],
                          "description": "Chilean bank deposit details",
                          "title": "Bank Deposit CL"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "minLength": 2,
                              "maxLength": 30,
                              "description": "Recipient name (required, 2–30 characters)"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 11,
                              "description": "Bank account number (max 11 digits for Bolivian accounts)"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (unused for BOB — no network discovery)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "maxLength": 20,
                              "description": "Bank name (optional, max 20 characters)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_BO"
                              ]
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 15,
                              "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type",
                            "destinationTaxId"
                          ],
                          "description": "Bolivian bank deposit details",
                          "title": "Bank Deposit BO"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_PE"
                              ]
                            },
                            "destinationCCI": {
                              "type": "string",
                              "description": "CCI — 20-digit interbank account code (legacy, optional)"
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "description": "Account type (corriente/ahorro) (legacy, optional)"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                            },
                            "destinationDocumentType": {
                              "type": "string",
                              "description": "Document type of the recipient (legacy, optional)"
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "destinationNetworkId",
                            "type"
                          ],
                          "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Bank Deposit PE",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "pattern": "^\\d{3}$",
                              "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                            },
                            "destinationBankAccountNumber": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 20,
                              "description": "Recipient bank account number (max 20)"
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "enum": [
                                "CORRIENTE",
                                "AHORROS",
                                "PHONE"
                              ],
                              "description": "Bank account type"
                            },
                            "destinationCCI": {
                              "type": "string",
                              "pattern": "^\\d{1,20}$",
                              "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                            },
                            "destinationDocumentType": {
                              "type": "string",
                              "enum": [
                                "CC",
                                "CE",
                                "RUC",
                                "PAS",
                                "PAR",
                                "LMI",
                                "OTHER"
                              ],
                              "description": "Recipient identification type"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 50,
                              "description": "Recipient identification number (max 50)"
                            },
                            "email": {
                              "type": "string",
                              "pattern": "^.+@.+\\..+$",
                              "description": "Recipient email (required for PEN payouts)"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "pattern": "^\\d{1,9}$",
                              "description": "Recipient phone number (required, max 9 digits)"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_PEN"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankCode",
                            "destinationBankAccountNumber",
                            "destinationBankAccountType",
                            "destinationCCI",
                            "destinationDocumentType",
                            "destinationTaxId",
                            "email",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Peruvian bank deposit details (bank-code payout corridor).",
                          "title": "Bank Deposit PEN"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_NG"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Nigeria bank deposit details",
                          "title": "Bank Deposit NG"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_KE"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Kenya bank deposit details",
                          "title": "Bank Deposit KE"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_GH"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Bank Deposit GH",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_ZA"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "South Africa bank deposit details",
                          "title": "Bank Deposit ZA"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_TZ"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Tanzania bank deposit details",
                          "title": "Bank Deposit TZ"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_UG"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Uganda bank deposit details",
                          "title": "Bank Deposit UG"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_RW"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Rwanda bank deposit details",
                          "title": "Bank Deposit RW"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_MW"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Malawi bank deposit details",
                          "title": "Bank Deposit MW"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_ZM"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Zambia bank deposit details",
                          "title": "Bank Deposit ZM"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_BW"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Botswana bank deposit details",
                          "title": "Bank Deposit BW"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_CD"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Bank Deposit CD",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_XOF"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "West African CFA bank deposit details",
                          "title": "Bank Deposit XOF"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_XAF"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Central African CFA bank deposit details",
                          "title": "Bank Deposit XAF"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_NG"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Nigeria mobile money details",
                          "title": "Mobile Money NG"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_KE"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Kenya mobile money details",
                          "title": "Mobile Money KE"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_GH"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Mobile Money GH",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_ZA"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "South Africa mobile money details",
                          "title": "Mobile Money ZA"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_TZ"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Tanzania mobile money details",
                          "title": "Mobile Money TZ"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_UG"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Uganda mobile money details",
                          "title": "Mobile Money UG"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_RW"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Rwanda mobile money details",
                          "title": "Mobile Money RW"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_MW"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Malawi mobile money details",
                          "title": "Mobile Money MW"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_ZM"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Zambia mobile money details",
                          "title": "Mobile Money ZM"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_BW"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Botswana mobile money details",
                          "title": "Mobile Money BW"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_CD"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Mobile Money CD",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_XOF"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "West African CFA mobile money details",
                          "title": "Mobile Money XOF"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_XAF"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Central African CFA mobile money details",
                          "title": "Mobile Money XAF"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "description": "Bank code"
                            },
                            "destinationBankAccountNumber": {
                              "type": "string",
                              "description": "Bank account number (18-digit CLABE)"
                            },
                            "numericReference": {
                              "type": "string",
                              "description": "Numeric reference"
                            },
                            "notesReference": {
                              "type": "string",
                              "description": "Notes reference"
                            },
                            "destinationClabe": {
                              "type": "string",
                              "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_MX"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccountNumber",
                            "type"
                          ],
                          "description": "Mexican bank deposit details",
                          "title": "Bank Deposit MX"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPseNumber": {
                              "type": "string",
                              "description": "PSE number"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "PSE"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPseNumber",
                            "type"
                          ],
                          "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "PSE",
                          "deprecated": true
                        }
                      ],
                      "description": "The details required for the end user destination transfer method."
                    },
                    "status": {
                      "anyOf": [
                        {
                          "type": "string",
                          "enum": [
                            "Pending",
                            "Processing",
                            "Success",
                            "Failed",
                            "Canceled",
                            "Reviewing"
                          ],
                          "description": "Common status values that are shared across all operation types",
                          "examples": [
                            "Pending",
                            "Processing",
                            "Success",
                            "Failed",
                            "Canceled",
                            "Reviewing"
                          ]
                        },
                        {
                          "type": "string",
                          "enum": [
                            "PendingCancel",
                            "PendingWithdrawal",
                            "PendingVerification",
                            "Pending2FA",
                            "Compliance",
                            "Accepted",
                            "Approved",
                            "Rejected",
                            "Review"
                          ]
                        }
                      ],
                      "description": "Status of the withdrawal",
                      "examples": [
                        "Pending",
                        "Pending2FA",
                        "Compliance",
                        "Accepted",
                        "Approved",
                        "Success",
                        "Failed",
                        "Review",
                        "Rejected"
                      ]
                    },
                    "withdrawalInfo": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "BALANCE"
                              ]
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "Balance transfer details",
                          "title": "Balance"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "iban": {
                              "type": "string",
                              "description": "IBAN number"
                            },
                            "bic": {
                              "type": "string",
                              "description": "BIC number (optional)"
                            },
                            "country": {
                              "type": "string",
                              "description": "Country code"
                            },
                            "accountType": {
                              "type": "string",
                              "enum": [
                                "PERSONAL",
                                "BUSINESS"
                              ],
                              "default": "PERSONAL",
                              "description": "Account type (optional)"
                            },
                            "city": {
                              "type": "string",
                              "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                            },
                            "postalCode": {
                              "type": "string",
                              "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                            },
                            "address": {
                              "type": "string",
                              "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "SEPA"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "iban",
                            "country",
                            "type"
                          ],
                          "description": "SEPA transfer details",
                          "title": "SEPA"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "UK bank account number"
                            },
                            "sortCode": {
                              "type": "string",
                              "description": "UK sort code"
                            },
                            "country": {
                              "type": "string",
                              "enum": [
                                "GB"
                              ],
                              "default": "GB",
                              "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                            },
                            "accountType": {
                              "type": "string",
                              "enum": [
                                "PERSONAL",
                                "BUSINESS"
                              ],
                              "default": "PERSONAL",
                              "description": "Account type (optional)"
                            },
                            "city": {
                              "type": "string",
                              "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                            },
                            "postalCode": {
                              "type": "string",
                              "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                            },
                            "address": {
                              "type": "string",
                              "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "GBP_BANK_TRANSFER"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "accountNumber",
                            "sortCode",
                            "type"
                          ],
                          "description": "GBP domestic bank transfer details",
                          "title": "BankDepositGB"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "US bank account number"
                            },
                            "routingNumber": {
                              "type": "string",
                              "description": "US ABA routing number"
                            },
                            "country": {
                              "type": "string",
                              "enum": [
                                "US"
                              ],
                              "default": "US",
                              "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                            },
                            "accountType": {
                              "type": "string",
                              "enum": [
                                "PERSONAL",
                                "BUSINESS"
                              ],
                              "default": "PERSONAL",
                              "description": "Account type (optional)"
                            },
                            "bankAccountType": {
                              "type": "string",
                              "enum": [
                                "CHECKING",
                                "SAVINGS"
                              ],
                              "default": "CHECKING",
                              "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                            },
                            "city": {
                              "type": "string",
                              "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                            },
                            "postalCode": {
                              "type": "string",
                              "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                            },
                            "state": {
                              "type": "string",
                              "pattern": "^[A-Z]{2}$",
                              "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                            },
                            "address": {
                              "type": "string",
                              "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "ACH_US"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "accountNumber",
                            "routingNumber",
                            "state",
                            "type"
                          ],
                          "description": "USD ACH transfer details",
                          "title": "AchUS"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "linkedBankAccount"
                              ]
                            },
                            "accountLinkId": {
                              "type": "string",
                              "pattern": "^alnk_[0-9a-f]{24}$",
                              "description": "Identifier of one of the account holder own linked bank accounts",
                              "examples": [
                                "alnk_0123456789abcdef01234567"
                              ]
                            }
                          },
                          "required": [
                            "type",
                            "accountLinkId"
                          ],
                          "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                          "title": "LinkedBankAccount",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "ETH"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "ETH destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "ETH"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "MATIC"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "MATIC destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "MATIC"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "SOL"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "SOL destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "\\S"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "\\S"
                                }
                              }
                            }
                          ],
                          "title": "SOL"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "TRON"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "TRON destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "\\S"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "\\S"
                                }
                              }
                            }
                          ],
                          "title": "TRON"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "CELO"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "CELO destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "CELO"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "BTC"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "BTC destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "\\S"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "\\S"
                                }
                              }
                            }
                          ],
                          "title": "BTC"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "SOLANA"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "SOLANA destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "\\S"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "\\S"
                                }
                              }
                            }
                          ],
                          "title": "SOLANA"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "XRP"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "XRP destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "\\S"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "\\S"
                                }
                              }
                            }
                          ],
                          "title": "XRP"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "CARDANO"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "CARDANO destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "\\S"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "\\S"
                                }
                              }
                            }
                          ],
                          "title": "CARDANO"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "BSC"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "BSC destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "BSC"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "ARBITRUM"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "ARBITRUM destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "ARBITRUM"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "OPTIMISM"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "OPTIMISM destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "OPTIMISM"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "AVALANCHE"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "AVALANCHE destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "AVALANCHE"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "BASE"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "BASE destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "BASE"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_COL"
                              ]
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "Recipient ID document number. Required when creating or updating a destination."
                            },
                            "destinationDocumentType": {
                              "type": "string",
                              "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                          "title": "Bank Deposit COL"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "brebKey": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Bre-B key (llave) that identifies the recipient account"
                            },
                            "email": {
                              "type": "string",
                              "description": "Recipient email (optional contact for the Bre-B rail)"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Recipient phone number (optional contact for the Bre-B rail)"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BRE_B_COP"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "brebKey",
                            "type"
                          ],
                          "description": "Colombian Bre-B payout details",
                          "title": "Bre-B COP"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "pattern": "^\\d{4}$",
                              "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                            },
                            "destinationBankAccountNumber": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Recipient bank account number"
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                            },
                            "destinationDocumentType": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Recipient ID document number"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "ACH_COP"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankCode",
                            "destinationBankAccountNumber",
                            "destinationBankAccountType",
                            "destinationDocumentType",
                            "destinationTaxId",
                            "type"
                          ],
                          "description": "Colombian ACH payout details",
                          "title": "ACH COP"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (unused for TWD — no network discovery)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "minLength": 2,
                              "description": "Bank name (required — TWD payouts run over SWIFT)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_TW"
                              ]
                            },
                            "destinationBankBranch": {
                              "type": "string",
                              "minLength": 2,
                              "description": "Bank branch (required — TWD payouts run over SWIFT)"
                            },
                            "bic": {
                              "type": "string",
                              "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                              "description": "SWIFT BIC code (required for TWD payouts)"
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "description": "Type of bank account (legacy, optional)"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "Tax ID of the recipient (legacy, optional)"
                            },
                            "destinationDocumentType": {
                              "type": "string",
                              "description": "Document type of the recipient (legacy, optional)"
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "destinationBankName",
                            "type",
                            "destinationBankBranch",
                            "bic"
                          ],
                          "description": "Taiwan bank deposit details (SWIFT payout)",
                          "title": "Bank Deposit TW"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "description": "Bank code"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationBankBranch": {
                              "type": "string",
                              "description": "Bank branch"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "Tax ID of the recipient"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_BR"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankCode",
                            "destinationBankAccount",
                            "destinationBankBranch",
                            "destinationTaxId",
                            "type"
                          ],
                          "description": "Brazilian bank deposit details",
                          "title": "Bank Deposit BR"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPixCode": {
                              "type": "string",
                              "description": "PIX code"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "Tax ID of the recipient"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "PIX_BR"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPixCode",
                            "destinationTaxId",
                            "type"
                          ],
                          "description": "Brazilian PIX details",
                          "title": "PIX BR"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccountNumber": {
                              "type": "string",
                              "description": "Bank account number"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Name of the bank"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                              "description": "Tax ID of the recipient"
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "description": "Type of bank account"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_VEN"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccountNumber",
                            "destinationBankName",
                            "destinationTaxId",
                            "destinationBankAccountType",
                            "type"
                          ],
                          "description": "Venezuelan bank deposit details",
                          "title": "Bank Deposit VEN"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "description": "Bank code"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                              "description": "Tax ID of the recipient"
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "description": "Type of bank account"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "PHONE_DEPOSIT_VEN"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankCode",
                            "destinationPhoneNumber",
                            "destinationTaxId",
                            "destinationBankAccountType",
                            "type"
                          ],
                          "description": "Venezuelan phone deposit details",
                          "title": "Phone Deposit VEN"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationIFSC": {
                              "type": "string",
                              "description": "IFSC code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_IN"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Bank Deposit IN",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationIFSC": {
                              "type": "string",
                              "description": "IFSC code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "IMPS"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "IMPS",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationIFSC": {
                              "type": "string",
                              "description": "IFSC code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "THAI_QR"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Thai QR",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationIFSC": {
                              "type": "string",
                              "description": "IFSC code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "VIET_QR"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Viet QR",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationIFSC": {
                              "type": "string",
                              "description": "IFSC code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "GCASH"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "GCash",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "Tax ID"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_PAYMENT_IN"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "destinationTaxId",
                            "type"
                          ],
                          "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Mobile Payment IN",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "description": "Bank code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_VN"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "destinationBankCode",
                            "type"
                          ],
                          "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Bank Deposit VN",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "bic": {
                              "type": "string",
                              "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "destinationAddress": {
                              "type": "string",
                              "description": "Address line 1 of the recipient"
                            },
                            "destinationCity": {
                              "type": "string",
                              "description": "Recipient city (defaults to Hong Kong)"
                            },
                            "accountHolderName": {
                              "type": "string",
                              "description": "Bank account holder name if different from payee"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_HK"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "bic",
                            "destinationBankName",
                            "destinationAddress",
                            "type"
                          ],
                          "description": "Hong Kong bank deposit details (HKD bank corridor)",
                          "title": "Bank Deposit HK"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "pattern": "^\\d+$",
                              "description": "CNAPS / bank institution code (numeric, variable length)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "destinationAddress": {
                              "type": "string",
                              "description": "Address line 1 of the recipient"
                            },
                            "destinationCity": {
                              "type": "string",
                              "description": "Recipient city"
                            },
                            "destinationState": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                            },
                            "destinationPostcode": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                            },
                            "destinationPhone": {
                              "type": "string",
                              "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                            },
                            "accountHolderName": {
                              "type": "string",
                              "description": "Bank account holder name if different from payee"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_CN"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "destinationBankCode",
                            "destinationBankName",
                            "destinationAddress",
                            "destinationCity",
                            "destinationState",
                            "destinationPostcode",
                            "type"
                          ],
                          "description": "China mainland bank deposit details (CNY bank corridor)",
                          "title": "Bank Deposit CN"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_AR"
                              ]
                            },
                            "destinationCBU": {
                              "type": "string",
                              "description": "CBU — 22-digit bank account key (legacy, optional)"
                            },
                            "destinationCVU": {
                              "type": "string",
                              "description": "CVU — 22-digit virtual account key (legacy, optional)"
                            },
                            "destinationAlias": {
                              "type": "string",
                              "description": "Account alias (legacy, optional)"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                            },
                            "destinationDocumentType": {
                              "type": "string",
                              "description": "Document type of the recipient (legacy, optional)"
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Argentinian bank deposit details",
                          "title": "Bank Deposit AR"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Recipient bank name (required for Chilean bank payouts)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_CL"
                              ]
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "minLength": 1,
                              "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                            },
                            "destinationDocumentType": {
                              "type": "string",
                              "description": "Document type of the recipient (legacy, optional)"
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "destinationBankName",
                            "type",
                            "destinationBankAccountType",
                            "destinationTaxId"
                          ],
                          "description": "Chilean bank deposit details",
                          "title": "Bank Deposit CL"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "minLength": 2,
                              "maxLength": 30,
                              "description": "Recipient name (required, 2–30 characters)"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 11,
                              "description": "Bank account number (max 11 digits for Bolivian accounts)"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (unused for BOB — no network discovery)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "maxLength": 20,
                              "description": "Bank name (optional, max 20 characters)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_BO"
                              ]
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 15,
                              "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type",
                            "destinationTaxId"
                          ],
                          "description": "Bolivian bank deposit details",
                          "title": "Bank Deposit BO"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_PE"
                              ]
                            },
                            "destinationCCI": {
                              "type": "string",
                              "description": "CCI — 20-digit interbank account code (legacy, optional)"
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "description": "Account type (corriente/ahorro) (legacy, optional)"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                            },
                            "destinationDocumentType": {
                              "type": "string",
                              "description": "Document type of the recipient (legacy, optional)"
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "destinationNetworkId",
                            "type"
                          ],
                          "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Bank Deposit PE",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "pattern": "^\\d{3}$",
                              "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                            },
                            "destinationBankAccountNumber": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 20,
                              "description": "Recipient bank account number (max 20)"
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "enum": [
                                "CORRIENTE",
                                "AHORROS",
                                "PHONE"
                              ],
                              "description": "Bank account type"
                            },
                            "destinationCCI": {
                              "type": "string",
                              "pattern": "^\\d{1,20}$",
                              "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                            },
                            "destinationDocumentType": {
                              "type": "string",
                              "enum": [
                                "CC",
                                "CE",
                                "RUC",
                                "PAS",
                                "PAR",
                                "LMI",
                                "OTHER"
                              ],
                              "description": "Recipient identification type"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 50,
                              "description": "Recipient identification number (max 50)"
                            },
                            "email": {
                              "type": "string",
                              "pattern": "^.+@.+\\..+$",
                              "description": "Recipient email (required for PEN payouts)"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "pattern": "^\\d{1,9}$",
                              "description": "Recipient phone number (required, max 9 digits)"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_PEN"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankCode",
                            "destinationBankAccountNumber",
                            "destinationBankAccountType",
                            "destinationCCI",
                            "destinationDocumentType",
                            "destinationTaxId",
                            "email",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Peruvian bank deposit details (bank-code payout corridor).",
                          "title": "Bank Deposit PEN"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_NG"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Nigeria bank deposit details",
                          "title": "Bank Deposit NG"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_KE"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Kenya bank deposit details",
                          "title": "Bank Deposit KE"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_GH"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Bank Deposit GH",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_ZA"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "South Africa bank deposit details",
                          "title": "Bank Deposit ZA"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_TZ"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Tanzania bank deposit details",
                          "title": "Bank Deposit TZ"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_UG"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Uganda bank deposit details",
                          "title": "Bank Deposit UG"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_RW"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Rwanda bank deposit details",
                          "title": "Bank Deposit RW"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_MW"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Malawi bank deposit details",
                          "title": "Bank Deposit MW"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_ZM"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Zambia bank deposit details",
                          "title": "Bank Deposit ZM"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_BW"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Botswana bank deposit details",
                          "title": "Bank Deposit BW"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_CD"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Bank Deposit CD",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_XOF"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "West African CFA bank deposit details",
                          "title": "Bank Deposit XOF"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_XAF"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Central African CFA bank deposit details",
                          "title": "Bank Deposit XAF"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_NG"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Nigeria mobile money details",
                          "title": "Mobile Money NG"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_KE"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Kenya mobile money details",
                          "title": "Mobile Money KE"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_GH"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Mobile Money GH",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_ZA"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "South Africa mobile money details",
                          "title": "Mobile Money ZA"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_TZ"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Tanzania mobile money details",
                          "title": "Mobile Money TZ"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_UG"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Uganda mobile money details",
                          "title": "Mobile Money UG"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_RW"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Rwanda mobile money details",
                          "title": "Mobile Money RW"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_MW"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Malawi mobile money details",
                          "title": "Mobile Money MW"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_ZM"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Zambia mobile money details",
                          "title": "Mobile Money ZM"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_BW"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Botswana mobile money details",
                          "title": "Mobile Money BW"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_CD"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Mobile Money CD",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_XOF"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "West African CFA mobile money details",
                          "title": "Mobile Money XOF"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_XAF"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Central African CFA mobile money details",
                          "title": "Mobile Money XAF"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "description": "Bank code"
                            },
                            "destinationBankAccountNumber": {
                              "type": "string",
                              "description": "Bank account number (18-digit CLABE)"
                            },
                            "numericReference": {
                              "type": "string",
                              "description": "Numeric reference"
                            },
                            "notesReference": {
                              "type": "string",
                              "description": "Notes reference"
                            },
                            "destinationClabe": {
                              "type": "string",
                              "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_MX"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccountNumber",
                            "type"
                          ],
                          "description": "Mexican bank deposit details",
                          "title": "Bank Deposit MX"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPseNumber": {
                              "type": "string",
                              "description": "PSE number"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "PSE"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPseNumber",
                            "type"
                          ],
                          "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "PSE",
                          "deprecated": true
                        }
                      ],
                      "description": "Detailed withdrawal information",
                      "title": "WithdrawalInfo"
                    },
                    "source": {
                      "type": "string",
                      "enum": [
                        "ui",
                        "apiApp",
                        "externalApi",
                        "internal"
                      ],
                      "description": "Source of withdrawal creation",
                      "example": "externalApi"
                    },
                    "requires2FA": {
                      "type": "boolean",
                      "description": "Whether 2FA is required for this withdrawal",
                      "example": false
                    },
                    "twoFactorToken": {
                      "type": "string",
                      "description": "2FA token for email approval",
                      "example": "abc123"
                    },
                    "twoFactorApprovedAt": {
                      "type": "number",
                      "description": "Timestamp when 2FA was approved",
                      "example": 1723027132
                    },
                    "errorCode": {
                      "type": "string",
                      "description": "Error code when status is Review",
                      "example": "INSUFFICIENT_BALANCE"
                    },
                    "errorDetails": {
                      "type": "string",
                      "description": "Detailed error information",
                      "example": "Insufficient balance for withdrawal"
                    },
                    "reviewedBy": {
                      "type": "string",
                      "description": "Admin email who reviewed the withdrawal",
                      "example": "admin@example.com"
                    },
                    "reviewedAt": {
                      "type": "number",
                      "description": "Timestamp when review happened",
                      "example": 1723027132
                    }
                  },
                  "required": [
                    "withdrawalId",
                    "createdAt",
                    "amount",
                    "currency",
                    "fee",
                    "feeCurrency",
                    "status"
                  ],
                  "description": "Response schema for creating a withdrawal"
                }
              }
            }
          },
          "400": {
            "description": "Bad request — invalid parameters, insufficient balance, or a malformed `Idempotency-Key` (invalid characters, over 128 characters, or the header sent more than once)",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "409": {
            "description": "`Idempotency-Key` conflict: the key was already used with a different payload or by a different endpoint, or an identical request is still in progress — see the Idempotent writes section of the guide",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/withdrawals\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"amount\": 1000,\n      \"currency\": \"EUR\",\n      \"userEmail\": \"user@example.com\",\n      \"destinationTranferId\": \"123\",\n      \"destinationTransferData\": {\n        \"type\": \"SEPA\",\n        \"destinationName\": \"John Doe\",\n        \"iban\": \"ES9121000418450200051332\",\n        \"bic\": \"CAIXESBBXXX\",\n        \"country\": \"ES\",\n        \"address\": \"Calle Mayor 1\"\n      },\n      \"beneficiary\": {\n        \"name\": \"string\",\n        \"surname\": \"string\",\n        \"relationship\": \"third_party\"\n      }\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api.virtuabroker.com/v1/withdrawals\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"amount\": 1000,\n        \"currency\": \"EUR\",\n        \"userEmail\": \"user@example.com\",\n        \"destinationTranferId\": \"123\",\n        \"destinationTransferData\": {\n            \"type\": \"SEPA\",\n            \"destinationName\": \"John Doe\",\n            \"iban\": \"ES9121000418450200051332\",\n            \"bic\": \"CAIXESBBXXX\",\n            \"country\": \"ES\",\n            \"address\": \"Calle Mayor 1\"\n        },\n        \"beneficiary\": {\n            \"name\": \"string\",\n            \"surname\": \"string\",\n            \"relationship\": \"third_party\"\n        }\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api.virtuabroker.com/v1/withdrawals\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"amount\": 1000,\n  \"currency\": \"EUR\",\n  \"userEmail\": \"user@example.com\",\n  \"destinationTranferId\": \"123\",\n  \"destinationTransferData\": {\n    \"type\": \"SEPA\",\n    \"destinationName\": \"John Doe\",\n    \"iban\": \"ES9121000418450200051332\",\n    \"bic\": \"CAIXESBBXXX\",\n    \"country\": \"ES\",\n    \"address\": \"Calle Mayor 1\"\n  },\n  \"beneficiary\": {\n    \"name\": \"string\",\n    \"surname\": \"string\",\n    \"relationship\": \"third_party\"\n  }\n}'"
          }
        ]
      },
      "get": {
        "summary": "List withdrawals",
        "description": "This endpoint retrieves a list of withdrawals based on various filters such as status, currency, date range, etc.",
        "tags": [
          "Withdrawals"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "description": "Optional currency code to filter the items",
              "example": "EUR"
            },
            "required": false,
            "description": "Optional currency code to filter the items",
            "name": "currency",
            "in": "query"
          },
          {
            "schema": {
              "type": "number",
              "minimum": 0
            },
            "required": false,
            "name": "minAmount",
            "in": "query"
          },
          {
            "schema": {
              "type": "number",
              "minimum": 0
            },
            "required": false,
            "name": "maxAmount",
            "in": "query"
          },
          {
            "schema": {
              "type": "integer",
              "minimum": 0
            },
            "required": false,
            "name": "from",
            "in": "query"
          },
          {
            "schema": {
              "type": "integer",
              "minimum": 0
            },
            "required": false,
            "name": "to",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
              "description": "Email of the user making the request. For a business payer this matches operations under any of its identities — the representative email and the organisation account — so listings stay complete across both.",
              "example": "user@example.com"
            },
            "required": false,
            "description": "Email of the user making the request. For a business payer this matches operations under any of its identities — the representative email and the organisation account — so listings stay complete across both.",
            "name": "userEmail",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "description": "General search (e.g. email or text). When provided, backend may use it for userEmail or text search."
            },
            "required": false,
            "description": "General search (e.g. email or text). When provided, backend may use it for userEmail or text search.",
            "name": "search",
            "in": "query"
          },
          {
            "schema": {
              "type": "number",
              "minimum": 0
            },
            "required": false,
            "name": "limit",
            "in": "query"
          },
          {
            "schema": {
              "type": "number",
              "minimum": 0
            },
            "required": false,
            "name": "page",
            "in": "query"
          },
          {
            "schema": {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "Pending",
                    "Processing",
                    "Success",
                    "Failed",
                    "Canceled",
                    "Reviewing"
                  ],
                  "description": "Common status values that are shared across all operation types",
                  "examples": [
                    "Pending",
                    "Processing",
                    "Success",
                    "Failed",
                    "Canceled",
                    "Reviewing"
                  ]
                },
                {
                  "type": "string",
                  "enum": [
                    "PendingCancel",
                    "PendingWithdrawal",
                    "PendingVerification",
                    "Pending2FA",
                    "Compliance",
                    "Accepted",
                    "Approved",
                    "Rejected",
                    "Review"
                  ]
                },
                {
                  "type": "array",
                  "items": {
                    "anyOf": [
                      {
                        "type": "string",
                        "enum": [
                          "Pending",
                          "Processing",
                          "Success",
                          "Failed",
                          "Canceled",
                          "Reviewing"
                        ],
                        "description": "Common status values that are shared across all operation types",
                        "examples": [
                          "Pending",
                          "Processing",
                          "Success",
                          "Failed",
                          "Canceled",
                          "Reviewing"
                        ]
                      },
                      {
                        "type": "string",
                        "enum": [
                          "PendingCancel",
                          "PendingWithdrawal",
                          "PendingVerification",
                          "Pending2FA",
                          "Compliance",
                          "Accepted",
                          "Approved",
                          "Rejected",
                          "Review"
                        ]
                      }
                    ],
                    "description": "Status for withdrawal operations",
                    "examples": [
                      "Pending",
                      "Pending2FA",
                      "Compliance",
                      "Accepted",
                      "Approved",
                      "Success",
                      "Failed",
                      "Review",
                      "Rejected"
                    ]
                  }
                }
              ],
              "description": "Optional status to filter withdrawals. Can be a single status or an array of statuses for multiple filtering",
              "examples": [
                "Pending",
                [
                  "Pending",
                  "Success"
                ],
                [
                  "Pending",
                  "Processing",
                  "Success"
                ]
              ]
            },
            "required": false,
            "description": "Optional status to filter withdrawals. Can be a single status or an array of statuses for multiple filtering",
            "name": "status",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "description": "Network filter for the withdrawals in case of crypto withdrawals",
              "examples": [
                "Ethereum"
              ]
            },
            "required": false,
            "description": "Network filter for the withdrawals in case of crypto withdrawals",
            "name": "network",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful retrieval of withdrawals list",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "withdrawalId": {
                        "anyOf": [
                          {
                            "type": "string",
                            "minLength": 12,
                            "maxLength": 12,
                            "pattern": "^[A-Z0-9]{12}$",
                            "examples": [
                              "01CLFXMT67II",
                              "2R7E5Y5KFXP8",
                              "4FWWRE3Y2URM"
                            ]
                          },
                          {
                            "type": "string",
                            "format": "uuid"
                          }
                        ],
                        "description": "ID of the withdrawal"
                      },
                      "userData": {
                        "oneOf": [
                          {
                            "type": "object",
                            "properties": {
                              "userType": {
                                "type": "string",
                                "enum": [
                                  "individual"
                                ]
                              },
                              "firstName": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 50,
                                "description": "First name of the user making the deposit (or representative for business)",
                                "examples": [
                                  "John",
                                  "Alice",
                                  "Bob"
                                ]
                              },
                              "lastName": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "Last name of the user making the deposit (or representative for business)",
                                "examples": [
                                  "Doe",
                                  "Smith",
                                  "Johnson"
                                ]
                              },
                              "userEmail": {
                                "type": "string",
                                "maxLength": 254,
                                "format": "email",
                                "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                "description": "Email of the user making the deposit",
                                "examples": [
                                  "user@virtuabroker.com",
                                  "john.doe@example.com",
                                  "alice@example.com"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "maxLength": 150,
                                "description": "Address of the user making the deposit",
                                "examples": [
                                  "123 Main St, Anytown, ES",
                                  "456 Elm St, Anytown, ES",
                                  "789 Oak St, Anytown, ES"
                                ]
                              },
                              "taxDocumentType": {
                                "type": "string",
                                "maxLength": 50,
                                "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                "examples": [
                                  "CC",
                                  "NIT",
                                  "CE",
                                  "NIF",
                                  "Other"
                                ]
                              },
                              "taxId": {
                                "type": "string",
                                "maxLength": 30,
                                "description": "Tax ID of the user making the deposit",
                                "examples": [
                                  "123-45-6789",
                                  "987-65-4321",
                                  "111-22-3333"
                                ]
                              },
                              "country": {
                                "type": "string",
                                "enum": [
                                  "US",
                                  "CA",
                                  "GB",
                                  "DE",
                                  "FR",
                                  "AU",
                                  "JP",
                                  "KR",
                                  "SE",
                                  "NO",
                                  "DK",
                                  "FI",
                                  "NL",
                                  "BE",
                                  "CH",
                                  "AT",
                                  "NZ",
                                  "SG",
                                  "IE",
                                  "LU",
                                  "PT",
                                  "ES",
                                  "IT",
                                  "GR",
                                  "CZ",
                                  "PL",
                                  "HU",
                                  "SK",
                                  "SI",
                                  "EE",
                                  "LT",
                                  "LV",
                                  "IS",
                                  "MT",
                                  "CY",
                                  "HR",
                                  "RO",
                                  "BG",
                                  "BR",
                                  "AR",
                                  "CL",
                                  "MX",
                                  "CO",
                                  "PE",
                                  "PA",
                                  "UY",
                                  "BO",
                                  "ZA",
                                  "NG",
                                  "KE",
                                  "GH",
                                  "TZ",
                                  "UG",
                                  "RW",
                                  "MW",
                                  "ZM",
                                  "BW",
                                  "CD",
                                  "CI",
                                  "CM",
                                  "IL",
                                  "AE",
                                  "QA",
                                  "SA",
                                  "OM",
                                  "KW",
                                  "BH",
                                  "MY",
                                  "PH",
                                  "TH",
                                  "VN",
                                  "ID",
                                  "IN",
                                  "LK",
                                  "NP",
                                  "BD",
                                  "PK",
                                  "EG",
                                  "MA",
                                  "DZ",
                                  "TN",
                                  "JO",
                                  "LB",
                                  "TR",
                                  "KH",
                                  "MM",
                                  "LA",
                                  "EN",
                                  "BT",
                                  "VE",
                                  "TW",
                                  "HK",
                                  "CN"
                                ],
                                "description": "Country code of the user making the deposit",
                                "examples": [
                                  "ES",
                                  "US",
                                  "GB"
                                ]
                              },
                              "state": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "State of the user making the deposit",
                                "examples": [
                                  "Madrid",
                                  "New York",
                                  "London"
                                ]
                              },
                              "postalCode": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 30,
                                "description": "Postal code of the user making the deposit",
                                "examples": [
                                  "12345",
                                  "67890",
                                  "abcde"
                                ]
                              },
                              "city": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "City of the user making the deposit",
                                "examples": [
                                  "Madrid",
                                  "New York",
                                  "London"
                                ]
                              },
                              "dob": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 30,
                                "description": "Date of birth of the user making the deposit",
                                "examples": [
                                  "1990-01-01",
                                  "1995-05-15",
                                  "1988-12-31"
                                ]
                              },
                              "phoneNumber": {
                                "type": "string",
                                "maxLength": 30,
                                "description": "Phone number of the user making the deposit",
                                "examples": [
                                  "+447700900123",
                                  "+447700900456",
                                  "+447700900789"
                                ]
                              },
                              "kycId": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 300,
                                "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                "examples": [
                                  "kyc-12345",
                                  "kyc-67890",
                                  "kyc-abcde"
                                ]
                              },
                              "activity": {
                                "type": "string",
                                "description": "Activity of the user making the deposit",
                                "examples": [
                                  "worker",
                                  "business",
                                  "student"
                                ]
                              }
                            },
                            "required": [
                              "userType",
                              "firstName",
                              "userEmail",
                              "country"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "userType": {
                                "type": "string",
                                "enum": [
                                  "business"
                                ]
                              },
                              "businessName": {
                                "type": "string",
                                "maxLength": 150,
                                "description": "Business name (required when userType is business)",
                                "examples": [
                                  "Acme Corp",
                                  "Tech Solutions Inc",
                                  "Global Services Ltd"
                                ]
                              },
                              "firstName": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 50,
                                "description": "First name of the user making the deposit (or representative for business)",
                                "examples": [
                                  "John",
                                  "Alice",
                                  "Bob"
                                ]
                              },
                              "userEmail": {
                                "type": "string",
                                "maxLength": 254,
                                "format": "email",
                                "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                "description": "Email of the user making the deposit",
                                "examples": [
                                  "user@virtuabroker.com",
                                  "john.doe@example.com",
                                  "alice@example.com"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "maxLength": 150,
                                "description": "Address of the user making the deposit",
                                "examples": [
                                  "123 Main St, Anytown, ES",
                                  "456 Elm St, Anytown, ES",
                                  "789 Oak St, Anytown, ES"
                                ]
                              },
                              "taxDocumentType": {
                                "type": "string",
                                "maxLength": 50,
                                "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                "examples": [
                                  "CC",
                                  "NIT",
                                  "CE",
                                  "NIF",
                                  "Other"
                                ]
                              },
                              "taxId": {
                                "type": "string",
                                "maxLength": 30,
                                "description": "Tax ID of the user making the deposit",
                                "examples": [
                                  "123-45-6789",
                                  "987-65-4321",
                                  "111-22-3333"
                                ]
                              },
                              "country": {
                                "type": "string",
                                "enum": [
                                  "US",
                                  "CA",
                                  "GB",
                                  "DE",
                                  "FR",
                                  "AU",
                                  "JP",
                                  "KR",
                                  "SE",
                                  "NO",
                                  "DK",
                                  "FI",
                                  "NL",
                                  "BE",
                                  "CH",
                                  "AT",
                                  "NZ",
                                  "SG",
                                  "IE",
                                  "LU",
                                  "PT",
                                  "ES",
                                  "IT",
                                  "GR",
                                  "CZ",
                                  "PL",
                                  "HU",
                                  "SK",
                                  "SI",
                                  "EE",
                                  "LT",
                                  "LV",
                                  "IS",
                                  "MT",
                                  "CY",
                                  "HR",
                                  "RO",
                                  "BG",
                                  "BR",
                                  "AR",
                                  "CL",
                                  "MX",
                                  "CO",
                                  "PE",
                                  "PA",
                                  "UY",
                                  "BO",
                                  "ZA",
                                  "NG",
                                  "KE",
                                  "GH",
                                  "TZ",
                                  "UG",
                                  "RW",
                                  "MW",
                                  "ZM",
                                  "BW",
                                  "CD",
                                  "CI",
                                  "CM",
                                  "IL",
                                  "AE",
                                  "QA",
                                  "SA",
                                  "OM",
                                  "KW",
                                  "BH",
                                  "MY",
                                  "PH",
                                  "TH",
                                  "VN",
                                  "ID",
                                  "IN",
                                  "LK",
                                  "NP",
                                  "BD",
                                  "PK",
                                  "EG",
                                  "MA",
                                  "DZ",
                                  "TN",
                                  "JO",
                                  "LB",
                                  "TR",
                                  "KH",
                                  "MM",
                                  "LA",
                                  "EN",
                                  "BT",
                                  "VE",
                                  "TW",
                                  "HK",
                                  "CN"
                                ],
                                "description": "Country code of the user making the deposit",
                                "examples": [
                                  "ES",
                                  "US",
                                  "GB"
                                ]
                              },
                              "state": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "State of the user making the deposit",
                                "examples": [
                                  "Madrid",
                                  "New York",
                                  "London"
                                ]
                              },
                              "postalCode": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 30,
                                "description": "Postal code of the user making the deposit",
                                "examples": [
                                  "12345",
                                  "67890",
                                  "abcde"
                                ]
                              },
                              "city": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "City of the user making the deposit",
                                "examples": [
                                  "Madrid",
                                  "New York",
                                  "London"
                                ]
                              },
                              "dob": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 30,
                                "description": "Date of birth of the user making the deposit",
                                "examples": [
                                  "1990-01-01",
                                  "1995-05-15",
                                  "1988-12-31"
                                ]
                              },
                              "phoneNumber": {
                                "type": "string",
                                "maxLength": 30,
                                "description": "Phone number of the user making the deposit",
                                "examples": [
                                  "+447700900123",
                                  "+447700900456",
                                  "+447700900789"
                                ]
                              },
                              "kycId": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 300,
                                "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                "examples": [
                                  "kyc-12345",
                                  "kyc-67890",
                                  "kyc-abcde"
                                ]
                              },
                              "activity": {
                                "type": "string",
                                "description": "Activity of the user making the deposit",
                                "examples": [
                                  "worker",
                                  "business",
                                  "student"
                                ]
                              }
                            },
                            "required": [
                              "userType",
                              "businessName",
                              "firstName",
                              "userEmail",
                              "country"
                            ]
                          }
                        ],
                        "description": "User data for the withdrawal"
                      },
                      "createdAt": {
                        "type": "number",
                        "description": "Creation time of the withdrawal",
                        "example": 1723027132
                      },
                      "updatedAt": {
                        "type": "number",
                        "description": "Last update time of the withdrawal",
                        "example": 1723027132
                      },
                      "userEmail": {
                        "type": "string",
                        "format": "email",
                        "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                        "description": "Email of the user making the request",
                        "example": "user@example.com"
                      },
                      "amount": {
                        "type": "number",
                        "description": "Amount to be withdrawn. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
                        "example": 1000
                      },
                      "currency": {
                        "type": "string",
                        "description": "Currency of the withdrawal",
                        "example": "EUR"
                      },
                      "fee": {
                        "type": "number",
                        "description": "Fee for the withdrawal. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
                        "example": 10
                      },
                      "feeCurrency": {
                        "type": "string",
                        "description": "Currency of the fee",
                        "example": "EUR"
                      },
                      "destinationTransferData": {
                        "oneOf": [
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BALANCE"
                                ]
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "Balance transfer details",
                            "title": "Balance"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "iban": {
                                "type": "string",
                                "description": "IBAN number"
                              },
                              "bic": {
                                "type": "string",
                                "description": "BIC number (optional)"
                              },
                              "country": {
                                "type": "string",
                                "description": "Country code"
                              },
                              "accountType": {
                                "type": "string",
                                "enum": [
                                  "PERSONAL",
                                  "BUSINESS"
                                ],
                                "default": "PERSONAL",
                                "description": "Account type (optional)"
                              },
                              "city": {
                                "type": "string",
                                "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                              },
                              "postalCode": {
                                "type": "string",
                                "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                              },
                              "address": {
                                "type": "string",
                                "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "SEPA"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "iban",
                              "country",
                              "type"
                            ],
                            "description": "SEPA transfer details",
                            "title": "SEPA"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "UK bank account number"
                              },
                              "sortCode": {
                                "type": "string",
                                "description": "UK sort code"
                              },
                              "country": {
                                "type": "string",
                                "enum": [
                                  "GB"
                                ],
                                "default": "GB",
                                "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                              },
                              "accountType": {
                                "type": "string",
                                "enum": [
                                  "PERSONAL",
                                  "BUSINESS"
                                ],
                                "default": "PERSONAL",
                                "description": "Account type (optional)"
                              },
                              "city": {
                                "type": "string",
                                "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                              },
                              "postalCode": {
                                "type": "string",
                                "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                              },
                              "address": {
                                "type": "string",
                                "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "GBP_BANK_TRANSFER"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "accountNumber",
                              "sortCode",
                              "type"
                            ],
                            "description": "GBP domestic bank transfer details",
                            "title": "BankDepositGB"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "US bank account number"
                              },
                              "routingNumber": {
                                "type": "string",
                                "description": "US ABA routing number"
                              },
                              "country": {
                                "type": "string",
                                "enum": [
                                  "US"
                                ],
                                "default": "US",
                                "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                              },
                              "accountType": {
                                "type": "string",
                                "enum": [
                                  "PERSONAL",
                                  "BUSINESS"
                                ],
                                "default": "PERSONAL",
                                "description": "Account type (optional)"
                              },
                              "bankAccountType": {
                                "type": "string",
                                "enum": [
                                  "CHECKING",
                                  "SAVINGS"
                                ],
                                "default": "CHECKING",
                                "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                              },
                              "city": {
                                "type": "string",
                                "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                              },
                              "postalCode": {
                                "type": "string",
                                "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                              },
                              "state": {
                                "type": "string",
                                "pattern": "^[A-Z]{2}$",
                                "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                              },
                              "address": {
                                "type": "string",
                                "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "ACH_US"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "accountNumber",
                              "routingNumber",
                              "state",
                              "type"
                            ],
                            "description": "USD ACH transfer details",
                            "title": "AchUS"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "linkedBankAccount"
                                ]
                              },
                              "accountLinkId": {
                                "type": "string",
                                "pattern": "^alnk_[0-9a-f]{24}$",
                                "description": "Identifier of one of the account holder own linked bank accounts",
                                "examples": [
                                  "alnk_0123456789abcdef01234567"
                                ]
                              }
                            },
                            "required": [
                              "type",
                              "accountLinkId"
                            ],
                            "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                            "title": "LinkedBankAccount",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "ETH"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "ETH destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "ETH"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MATIC"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "MATIC destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "MATIC"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "SOL"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "SOL destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "SOL"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "TRON"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "TRON destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "TRON"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "CELO"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "CELO destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "CELO"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BTC"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "BTC destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "BTC"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "SOLANA"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "SOLANA destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "SOLANA"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "XRP"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "XRP destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "XRP"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "CARDANO"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "CARDANO destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "CARDANO"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BSC"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "BSC destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "BSC"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "ARBITRUM"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "ARBITRUM destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "ARBITRUM"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "OPTIMISM"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "OPTIMISM destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "OPTIMISM"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "AVALANCHE"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "AVALANCHE destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "AVALANCHE"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BASE"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "BASE destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "BASE"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_COL"
                                ]
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Recipient ID document number. Required when creating or updating a destination."
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                            "title": "Bank Deposit COL"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "brebKey": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Bre-B key (llave) that identifies the recipient account"
                              },
                              "email": {
                                "type": "string",
                                "description": "Recipient email (optional contact for the Bre-B rail)"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Recipient phone number (optional contact for the Bre-B rail)"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BRE_B_COP"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "brebKey",
                              "type"
                            ],
                            "description": "Colombian Bre-B payout details",
                            "title": "Bre-B COP"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "pattern": "^\\d{4}$",
                                "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                              },
                              "destinationBankAccountNumber": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Recipient bank account number"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Recipient ID document number"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "ACH_COP"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankCode",
                              "destinationBankAccountNumber",
                              "destinationBankAccountType",
                              "destinationDocumentType",
                              "destinationTaxId",
                              "type"
                            ],
                            "description": "Colombian ACH payout details",
                            "title": "ACH COP"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (unused for TWD — no network discovery)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "minLength": 2,
                                "description": "Bank name (required — TWD payouts run over SWIFT)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_TW"
                                ]
                              },
                              "destinationBankBranch": {
                                "type": "string",
                                "minLength": 2,
                                "description": "Bank branch (required — TWD payouts run over SWIFT)"
                              },
                              "bic": {
                                "type": "string",
                                "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                                "description": "SWIFT BIC code (required for TWD payouts)"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "description": "Type of bank account (legacy, optional)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Tax ID of the recipient (legacy, optional)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "description": "Document type of the recipient (legacy, optional)"
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "destinationBankName",
                              "type",
                              "destinationBankBranch",
                              "bic"
                            ],
                            "description": "Taiwan bank deposit details (SWIFT payout)",
                            "title": "Bank Deposit TW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "description": "Bank code"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationBankBranch": {
                                "type": "string",
                                "description": "Bank branch"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Tax ID of the recipient"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_BR"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankCode",
                              "destinationBankAccount",
                              "destinationBankBranch",
                              "destinationTaxId",
                              "type"
                            ],
                            "description": "Brazilian bank deposit details",
                            "title": "Bank Deposit BR"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPixCode": {
                                "type": "string",
                                "description": "PIX code"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Tax ID of the recipient"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "PIX_BR"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPixCode",
                              "destinationTaxId",
                              "type"
                            ],
                            "description": "Brazilian PIX details",
                            "title": "PIX BR"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccountNumber": {
                                "type": "string",
                                "description": "Bank account number"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Name of the bank"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                                "description": "Tax ID of the recipient"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "description": "Type of bank account"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_VEN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccountNumber",
                              "destinationBankName",
                              "destinationTaxId",
                              "destinationBankAccountType",
                              "type"
                            ],
                            "description": "Venezuelan bank deposit details",
                            "title": "Bank Deposit VEN"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "description": "Bank code"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                                "description": "Tax ID of the recipient"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "description": "Type of bank account"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "PHONE_DEPOSIT_VEN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankCode",
                              "destinationPhoneNumber",
                              "destinationTaxId",
                              "destinationBankAccountType",
                              "type"
                            ],
                            "description": "Venezuelan phone deposit details",
                            "title": "Phone Deposit VEN"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationIFSC": {
                                "type": "string",
                                "description": "IFSC code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_IN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Bank Deposit IN",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationIFSC": {
                                "type": "string",
                                "description": "IFSC code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "IMPS"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "IMPS",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationIFSC": {
                                "type": "string",
                                "description": "IFSC code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "THAI_QR"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Thai QR",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationIFSC": {
                                "type": "string",
                                "description": "IFSC code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "VIET_QR"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Viet QR",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationIFSC": {
                                "type": "string",
                                "description": "IFSC code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "GCASH"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "GCash",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Tax ID"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_PAYMENT_IN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "destinationTaxId",
                              "type"
                            ],
                            "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Mobile Payment IN",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "description": "Bank code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_VN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "destinationBankCode",
                              "type"
                            ],
                            "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Bank Deposit VN",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "bic": {
                                "type": "string",
                                "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "destinationAddress": {
                                "type": "string",
                                "description": "Address line 1 of the recipient"
                              },
                              "destinationCity": {
                                "type": "string",
                                "description": "Recipient city (defaults to Hong Kong)"
                              },
                              "accountHolderName": {
                                "type": "string",
                                "description": "Bank account holder name if different from payee"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_HK"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "bic",
                              "destinationBankName",
                              "destinationAddress",
                              "type"
                            ],
                            "description": "Hong Kong bank deposit details (HKD bank corridor)",
                            "title": "Bank Deposit HK"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "pattern": "^\\d+$",
                                "description": "CNAPS / bank institution code (numeric, variable length)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "destinationAddress": {
                                "type": "string",
                                "description": "Address line 1 of the recipient"
                              },
                              "destinationCity": {
                                "type": "string",
                                "description": "Recipient city"
                              },
                              "destinationState": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                              },
                              "destinationPostcode": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                              },
                              "destinationPhone": {
                                "type": "string",
                                "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                              },
                              "accountHolderName": {
                                "type": "string",
                                "description": "Bank account holder name if different from payee"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_CN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "destinationBankCode",
                              "destinationBankName",
                              "destinationAddress",
                              "destinationCity",
                              "destinationState",
                              "destinationPostcode",
                              "type"
                            ],
                            "description": "China mainland bank deposit details (CNY bank corridor)",
                            "title": "Bank Deposit CN"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_AR"
                                ]
                              },
                              "destinationCBU": {
                                "type": "string",
                                "description": "CBU — 22-digit bank account key (legacy, optional)"
                              },
                              "destinationCVU": {
                                "type": "string",
                                "description": "CVU — 22-digit virtual account key (legacy, optional)"
                              },
                              "destinationAlias": {
                                "type": "string",
                                "description": "Account alias (legacy, optional)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "description": "Document type of the recipient (legacy, optional)"
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Argentinian bank deposit details",
                            "title": "Bank Deposit AR"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Recipient bank name (required for Chilean bank payouts)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_CL"
                                ]
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "minLength": 1,
                                "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "description": "Document type of the recipient (legacy, optional)"
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "destinationBankName",
                              "type",
                              "destinationBankAccountType",
                              "destinationTaxId"
                            ],
                            "description": "Chilean bank deposit details",
                            "title": "Bank Deposit CL"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "minLength": 2,
                                "maxLength": 30,
                                "description": "Recipient name (required, 2–30 characters)"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 11,
                                "description": "Bank account number (max 11 digits for Bolivian accounts)"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (unused for BOB — no network discovery)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "maxLength": 20,
                                "description": "Bank name (optional, max 20 characters)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_BO"
                                ]
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 15,
                                "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type",
                              "destinationTaxId"
                            ],
                            "description": "Bolivian bank deposit details",
                            "title": "Bank Deposit BO"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_PE"
                                ]
                              },
                              "destinationCCI": {
                                "type": "string",
                                "description": "CCI — 20-digit interbank account code (legacy, optional)"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "description": "Account type (corriente/ahorro) (legacy, optional)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "description": "Document type of the recipient (legacy, optional)"
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "destinationNetworkId",
                              "type"
                            ],
                            "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Bank Deposit PE",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "pattern": "^\\d{3}$",
                                "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                              },
                              "destinationBankAccountNumber": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 20,
                                "description": "Recipient bank account number (max 20)"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "enum": [
                                  "CORRIENTE",
                                  "AHORROS",
                                  "PHONE"
                                ],
                                "description": "Bank account type"
                              },
                              "destinationCCI": {
                                "type": "string",
                                "pattern": "^\\d{1,20}$",
                                "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "enum": [
                                  "CC",
                                  "CE",
                                  "RUC",
                                  "PAS",
                                  "PAR",
                                  "LMI",
                                  "OTHER"
                                ],
                                "description": "Recipient identification type"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 50,
                                "description": "Recipient identification number (max 50)"
                              },
                              "email": {
                                "type": "string",
                                "pattern": "^.+@.+\\..+$",
                                "description": "Recipient email (required for PEN payouts)"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "pattern": "^\\d{1,9}$",
                                "description": "Recipient phone number (required, max 9 digits)"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_PEN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankCode",
                              "destinationBankAccountNumber",
                              "destinationBankAccountType",
                              "destinationCCI",
                              "destinationDocumentType",
                              "destinationTaxId",
                              "email",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Peruvian bank deposit details (bank-code payout corridor).",
                            "title": "Bank Deposit PEN"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_NG"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Nigeria bank deposit details",
                            "title": "Bank Deposit NG"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_KE"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Kenya bank deposit details",
                            "title": "Bank Deposit KE"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_GH"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Bank Deposit GH",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_ZA"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "South Africa bank deposit details",
                            "title": "Bank Deposit ZA"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_TZ"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Tanzania bank deposit details",
                            "title": "Bank Deposit TZ"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_UG"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Uganda bank deposit details",
                            "title": "Bank Deposit UG"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_RW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Rwanda bank deposit details",
                            "title": "Bank Deposit RW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_MW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Malawi bank deposit details",
                            "title": "Bank Deposit MW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_ZM"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Zambia bank deposit details",
                            "title": "Bank Deposit ZM"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_BW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Botswana bank deposit details",
                            "title": "Bank Deposit BW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_CD"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Bank Deposit CD",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_XOF"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "West African CFA bank deposit details",
                            "title": "Bank Deposit XOF"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_XAF"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Central African CFA bank deposit details",
                            "title": "Bank Deposit XAF"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_NG"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Nigeria mobile money details",
                            "title": "Mobile Money NG"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_KE"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Kenya mobile money details",
                            "title": "Mobile Money KE"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_GH"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Mobile Money GH",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_ZA"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "South Africa mobile money details",
                            "title": "Mobile Money ZA"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_TZ"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Tanzania mobile money details",
                            "title": "Mobile Money TZ"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_UG"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Uganda mobile money details",
                            "title": "Mobile Money UG"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_RW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Rwanda mobile money details",
                            "title": "Mobile Money RW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_MW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Malawi mobile money details",
                            "title": "Mobile Money MW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_ZM"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Zambia mobile money details",
                            "title": "Mobile Money ZM"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_BW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Botswana mobile money details",
                            "title": "Mobile Money BW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_CD"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Mobile Money CD",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_XOF"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "West African CFA mobile money details",
                            "title": "Mobile Money XOF"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_XAF"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Central African CFA mobile money details",
                            "title": "Mobile Money XAF"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "description": "Bank code"
                              },
                              "destinationBankAccountNumber": {
                                "type": "string",
                                "description": "Bank account number (18-digit CLABE)"
                              },
                              "numericReference": {
                                "type": "string",
                                "description": "Numeric reference"
                              },
                              "notesReference": {
                                "type": "string",
                                "description": "Notes reference"
                              },
                              "destinationClabe": {
                                "type": "string",
                                "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_MX"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccountNumber",
                              "type"
                            ],
                            "description": "Mexican bank deposit details",
                            "title": "Bank Deposit MX"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPseNumber": {
                                "type": "string",
                                "description": "PSE number"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "PSE"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPseNumber",
                              "type"
                            ],
                            "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "PSE",
                            "deprecated": true
                          }
                        ],
                        "description": "The details required for the end user destination transfer method."
                      },
                      "status": {
                        "anyOf": [
                          {
                            "type": "string",
                            "enum": [
                              "Pending",
                              "Processing",
                              "Success",
                              "Failed",
                              "Canceled",
                              "Reviewing"
                            ],
                            "description": "Common status values that are shared across all operation types",
                            "examples": [
                              "Pending",
                              "Processing",
                              "Success",
                              "Failed",
                              "Canceled",
                              "Reviewing"
                            ]
                          },
                          {
                            "type": "string",
                            "enum": [
                              "PendingCancel",
                              "PendingWithdrawal",
                              "PendingVerification",
                              "Pending2FA",
                              "Compliance",
                              "Accepted",
                              "Approved",
                              "Rejected",
                              "Review"
                            ]
                          }
                        ],
                        "description": "Status of the withdrawal",
                        "examples": [
                          "Pending",
                          "Pending2FA",
                          "Compliance",
                          "Accepted",
                          "Approved",
                          "Success",
                          "Failed",
                          "Review",
                          "Rejected"
                        ]
                      },
                      "withdrawalInfo": {
                        "oneOf": [
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BALANCE"
                                ]
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "Balance transfer details",
                            "title": "Balance"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "iban": {
                                "type": "string",
                                "description": "IBAN number"
                              },
                              "bic": {
                                "type": "string",
                                "description": "BIC number (optional)"
                              },
                              "country": {
                                "type": "string",
                                "description": "Country code"
                              },
                              "accountType": {
                                "type": "string",
                                "enum": [
                                  "PERSONAL",
                                  "BUSINESS"
                                ],
                                "default": "PERSONAL",
                                "description": "Account type (optional)"
                              },
                              "city": {
                                "type": "string",
                                "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                              },
                              "postalCode": {
                                "type": "string",
                                "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                              },
                              "address": {
                                "type": "string",
                                "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "SEPA"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "iban",
                              "country",
                              "type"
                            ],
                            "description": "SEPA transfer details",
                            "title": "SEPA"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "UK bank account number"
                              },
                              "sortCode": {
                                "type": "string",
                                "description": "UK sort code"
                              },
                              "country": {
                                "type": "string",
                                "enum": [
                                  "GB"
                                ],
                                "default": "GB",
                                "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                              },
                              "accountType": {
                                "type": "string",
                                "enum": [
                                  "PERSONAL",
                                  "BUSINESS"
                                ],
                                "default": "PERSONAL",
                                "description": "Account type (optional)"
                              },
                              "city": {
                                "type": "string",
                                "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                              },
                              "postalCode": {
                                "type": "string",
                                "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                              },
                              "address": {
                                "type": "string",
                                "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "GBP_BANK_TRANSFER"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "accountNumber",
                              "sortCode",
                              "type"
                            ],
                            "description": "GBP domestic bank transfer details",
                            "title": "BankDepositGB"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "US bank account number"
                              },
                              "routingNumber": {
                                "type": "string",
                                "description": "US ABA routing number"
                              },
                              "country": {
                                "type": "string",
                                "enum": [
                                  "US"
                                ],
                                "default": "US",
                                "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                              },
                              "accountType": {
                                "type": "string",
                                "enum": [
                                  "PERSONAL",
                                  "BUSINESS"
                                ],
                                "default": "PERSONAL",
                                "description": "Account type (optional)"
                              },
                              "bankAccountType": {
                                "type": "string",
                                "enum": [
                                  "CHECKING",
                                  "SAVINGS"
                                ],
                                "default": "CHECKING",
                                "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                              },
                              "city": {
                                "type": "string",
                                "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                              },
                              "postalCode": {
                                "type": "string",
                                "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                              },
                              "state": {
                                "type": "string",
                                "pattern": "^[A-Z]{2}$",
                                "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                              },
                              "address": {
                                "type": "string",
                                "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "ACH_US"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "accountNumber",
                              "routingNumber",
                              "state",
                              "type"
                            ],
                            "description": "USD ACH transfer details",
                            "title": "AchUS"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "linkedBankAccount"
                                ]
                              },
                              "accountLinkId": {
                                "type": "string",
                                "pattern": "^alnk_[0-9a-f]{24}$",
                                "description": "Identifier of one of the account holder own linked bank accounts",
                                "examples": [
                                  "alnk_0123456789abcdef01234567"
                                ]
                              }
                            },
                            "required": [
                              "type",
                              "accountLinkId"
                            ],
                            "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                            "title": "LinkedBankAccount",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "ETH"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "ETH destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "ETH"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MATIC"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "MATIC destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "MATIC"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "SOL"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "SOL destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "SOL"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "TRON"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "TRON destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "TRON"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "CELO"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "CELO destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "CELO"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BTC"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "BTC destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "BTC"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "SOLANA"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "SOLANA destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "SOLANA"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "XRP"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "XRP destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "XRP"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "CARDANO"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "CARDANO destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "CARDANO"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BSC"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "BSC destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "BSC"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "ARBITRUM"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "ARBITRUM destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "ARBITRUM"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "OPTIMISM"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "OPTIMISM destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "OPTIMISM"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "AVALANCHE"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "AVALANCHE destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "AVALANCHE"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BASE"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "BASE destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "BASE"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_COL"
                                ]
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Recipient ID document number. Required when creating or updating a destination."
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                            "title": "Bank Deposit COL"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "brebKey": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Bre-B key (llave) that identifies the recipient account"
                              },
                              "email": {
                                "type": "string",
                                "description": "Recipient email (optional contact for the Bre-B rail)"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Recipient phone number (optional contact for the Bre-B rail)"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BRE_B_COP"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "brebKey",
                              "type"
                            ],
                            "description": "Colombian Bre-B payout details",
                            "title": "Bre-B COP"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "pattern": "^\\d{4}$",
                                "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                              },
                              "destinationBankAccountNumber": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Recipient bank account number"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Recipient ID document number"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "ACH_COP"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankCode",
                              "destinationBankAccountNumber",
                              "destinationBankAccountType",
                              "destinationDocumentType",
                              "destinationTaxId",
                              "type"
                            ],
                            "description": "Colombian ACH payout details",
                            "title": "ACH COP"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (unused for TWD — no network discovery)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "minLength": 2,
                                "description": "Bank name (required — TWD payouts run over SWIFT)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_TW"
                                ]
                              },
                              "destinationBankBranch": {
                                "type": "string",
                                "minLength": 2,
                                "description": "Bank branch (required — TWD payouts run over SWIFT)"
                              },
                              "bic": {
                                "type": "string",
                                "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                                "description": "SWIFT BIC code (required for TWD payouts)"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "description": "Type of bank account (legacy, optional)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Tax ID of the recipient (legacy, optional)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "description": "Document type of the recipient (legacy, optional)"
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "destinationBankName",
                              "type",
                              "destinationBankBranch",
                              "bic"
                            ],
                            "description": "Taiwan bank deposit details (SWIFT payout)",
                            "title": "Bank Deposit TW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "description": "Bank code"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationBankBranch": {
                                "type": "string",
                                "description": "Bank branch"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Tax ID of the recipient"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_BR"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankCode",
                              "destinationBankAccount",
                              "destinationBankBranch",
                              "destinationTaxId",
                              "type"
                            ],
                            "description": "Brazilian bank deposit details",
                            "title": "Bank Deposit BR"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPixCode": {
                                "type": "string",
                                "description": "PIX code"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Tax ID of the recipient"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "PIX_BR"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPixCode",
                              "destinationTaxId",
                              "type"
                            ],
                            "description": "Brazilian PIX details",
                            "title": "PIX BR"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccountNumber": {
                                "type": "string",
                                "description": "Bank account number"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Name of the bank"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                                "description": "Tax ID of the recipient"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "description": "Type of bank account"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_VEN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccountNumber",
                              "destinationBankName",
                              "destinationTaxId",
                              "destinationBankAccountType",
                              "type"
                            ],
                            "description": "Venezuelan bank deposit details",
                            "title": "Bank Deposit VEN"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "description": "Bank code"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                                "description": "Tax ID of the recipient"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "description": "Type of bank account"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "PHONE_DEPOSIT_VEN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankCode",
                              "destinationPhoneNumber",
                              "destinationTaxId",
                              "destinationBankAccountType",
                              "type"
                            ],
                            "description": "Venezuelan phone deposit details",
                            "title": "Phone Deposit VEN"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationIFSC": {
                                "type": "string",
                                "description": "IFSC code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_IN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Bank Deposit IN",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationIFSC": {
                                "type": "string",
                                "description": "IFSC code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "IMPS"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "IMPS",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationIFSC": {
                                "type": "string",
                                "description": "IFSC code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "THAI_QR"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Thai QR",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationIFSC": {
                                "type": "string",
                                "description": "IFSC code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "VIET_QR"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Viet QR",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationIFSC": {
                                "type": "string",
                                "description": "IFSC code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "GCASH"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "GCash",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Tax ID"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_PAYMENT_IN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "destinationTaxId",
                              "type"
                            ],
                            "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Mobile Payment IN",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "description": "Bank code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_VN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "destinationBankCode",
                              "type"
                            ],
                            "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Bank Deposit VN",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "bic": {
                                "type": "string",
                                "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "destinationAddress": {
                                "type": "string",
                                "description": "Address line 1 of the recipient"
                              },
                              "destinationCity": {
                                "type": "string",
                                "description": "Recipient city (defaults to Hong Kong)"
                              },
                              "accountHolderName": {
                                "type": "string",
                                "description": "Bank account holder name if different from payee"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_HK"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "bic",
                              "destinationBankName",
                              "destinationAddress",
                              "type"
                            ],
                            "description": "Hong Kong bank deposit details (HKD bank corridor)",
                            "title": "Bank Deposit HK"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "pattern": "^\\d+$",
                                "description": "CNAPS / bank institution code (numeric, variable length)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "destinationAddress": {
                                "type": "string",
                                "description": "Address line 1 of the recipient"
                              },
                              "destinationCity": {
                                "type": "string",
                                "description": "Recipient city"
                              },
                              "destinationState": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                              },
                              "destinationPostcode": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                              },
                              "destinationPhone": {
                                "type": "string",
                                "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                              },
                              "accountHolderName": {
                                "type": "string",
                                "description": "Bank account holder name if different from payee"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_CN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "destinationBankCode",
                              "destinationBankName",
                              "destinationAddress",
                              "destinationCity",
                              "destinationState",
                              "destinationPostcode",
                              "type"
                            ],
                            "description": "China mainland bank deposit details (CNY bank corridor)",
                            "title": "Bank Deposit CN"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_AR"
                                ]
                              },
                              "destinationCBU": {
                                "type": "string",
                                "description": "CBU — 22-digit bank account key (legacy, optional)"
                              },
                              "destinationCVU": {
                                "type": "string",
                                "description": "CVU — 22-digit virtual account key (legacy, optional)"
                              },
                              "destinationAlias": {
                                "type": "string",
                                "description": "Account alias (legacy, optional)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "description": "Document type of the recipient (legacy, optional)"
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Argentinian bank deposit details",
                            "title": "Bank Deposit AR"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Recipient bank name (required for Chilean bank payouts)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_CL"
                                ]
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "minLength": 1,
                                "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "description": "Document type of the recipient (legacy, optional)"
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "destinationBankName",
                              "type",
                              "destinationBankAccountType",
                              "destinationTaxId"
                            ],
                            "description": "Chilean bank deposit details",
                            "title": "Bank Deposit CL"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "minLength": 2,
                                "maxLength": 30,
                                "description": "Recipient name (required, 2–30 characters)"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 11,
                                "description": "Bank account number (max 11 digits for Bolivian accounts)"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (unused for BOB — no network discovery)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "maxLength": 20,
                                "description": "Bank name (optional, max 20 characters)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_BO"
                                ]
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 15,
                                "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type",
                              "destinationTaxId"
                            ],
                            "description": "Bolivian bank deposit details",
                            "title": "Bank Deposit BO"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_PE"
                                ]
                              },
                              "destinationCCI": {
                                "type": "string",
                                "description": "CCI — 20-digit interbank account code (legacy, optional)"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "description": "Account type (corriente/ahorro) (legacy, optional)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "description": "Document type of the recipient (legacy, optional)"
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "destinationNetworkId",
                              "type"
                            ],
                            "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Bank Deposit PE",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "pattern": "^\\d{3}$",
                                "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                              },
                              "destinationBankAccountNumber": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 20,
                                "description": "Recipient bank account number (max 20)"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "enum": [
                                  "CORRIENTE",
                                  "AHORROS",
                                  "PHONE"
                                ],
                                "description": "Bank account type"
                              },
                              "destinationCCI": {
                                "type": "string",
                                "pattern": "^\\d{1,20}$",
                                "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "enum": [
                                  "CC",
                                  "CE",
                                  "RUC",
                                  "PAS",
                                  "PAR",
                                  "LMI",
                                  "OTHER"
                                ],
                                "description": "Recipient identification type"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 50,
                                "description": "Recipient identification number (max 50)"
                              },
                              "email": {
                                "type": "string",
                                "pattern": "^.+@.+\\..+$",
                                "description": "Recipient email (required for PEN payouts)"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "pattern": "^\\d{1,9}$",
                                "description": "Recipient phone number (required, max 9 digits)"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_PEN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankCode",
                              "destinationBankAccountNumber",
                              "destinationBankAccountType",
                              "destinationCCI",
                              "destinationDocumentType",
                              "destinationTaxId",
                              "email",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Peruvian bank deposit details (bank-code payout corridor).",
                            "title": "Bank Deposit PEN"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_NG"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Nigeria bank deposit details",
                            "title": "Bank Deposit NG"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_KE"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Kenya bank deposit details",
                            "title": "Bank Deposit KE"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_GH"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Bank Deposit GH",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_ZA"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "South Africa bank deposit details",
                            "title": "Bank Deposit ZA"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_TZ"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Tanzania bank deposit details",
                            "title": "Bank Deposit TZ"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_UG"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Uganda bank deposit details",
                            "title": "Bank Deposit UG"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_RW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Rwanda bank deposit details",
                            "title": "Bank Deposit RW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_MW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Malawi bank deposit details",
                            "title": "Bank Deposit MW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_ZM"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Zambia bank deposit details",
                            "title": "Bank Deposit ZM"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_BW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Botswana bank deposit details",
                            "title": "Bank Deposit BW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_CD"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Bank Deposit CD",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_XOF"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "West African CFA bank deposit details",
                            "title": "Bank Deposit XOF"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_XAF"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Central African CFA bank deposit details",
                            "title": "Bank Deposit XAF"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_NG"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Nigeria mobile money details",
                            "title": "Mobile Money NG"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_KE"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Kenya mobile money details",
                            "title": "Mobile Money KE"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_GH"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Mobile Money GH",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_ZA"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "South Africa mobile money details",
                            "title": "Mobile Money ZA"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_TZ"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Tanzania mobile money details",
                            "title": "Mobile Money TZ"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_UG"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Uganda mobile money details",
                            "title": "Mobile Money UG"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_RW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Rwanda mobile money details",
                            "title": "Mobile Money RW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_MW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Malawi mobile money details",
                            "title": "Mobile Money MW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_ZM"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Zambia mobile money details",
                            "title": "Mobile Money ZM"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_BW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Botswana mobile money details",
                            "title": "Mobile Money BW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_CD"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Mobile Money CD",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_XOF"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "West African CFA mobile money details",
                            "title": "Mobile Money XOF"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_XAF"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Central African CFA mobile money details",
                            "title": "Mobile Money XAF"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "description": "Bank code"
                              },
                              "destinationBankAccountNumber": {
                                "type": "string",
                                "description": "Bank account number (18-digit CLABE)"
                              },
                              "numericReference": {
                                "type": "string",
                                "description": "Numeric reference"
                              },
                              "notesReference": {
                                "type": "string",
                                "description": "Notes reference"
                              },
                              "destinationClabe": {
                                "type": "string",
                                "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_MX"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccountNumber",
                              "type"
                            ],
                            "description": "Mexican bank deposit details",
                            "title": "Bank Deposit MX"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPseNumber": {
                                "type": "string",
                                "description": "PSE number"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "PSE"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPseNumber",
                              "type"
                            ],
                            "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "PSE",
                            "deprecated": true
                          }
                        ],
                        "description": "Detailed withdrawal information",
                        "title": "WithdrawalInfo"
                      },
                      "source": {
                        "type": "string",
                        "enum": [
                          "ui",
                          "apiApp",
                          "externalApi",
                          "internal"
                        ],
                        "description": "Source of withdrawal creation",
                        "example": "externalApi"
                      },
                      "requires2FA": {
                        "type": "boolean",
                        "description": "Whether 2FA is required for this withdrawal",
                        "example": false
                      },
                      "twoFactorToken": {
                        "type": "string",
                        "description": "2FA token for email approval",
                        "example": "abc123"
                      },
                      "twoFactorApprovedAt": {
                        "type": "number",
                        "description": "Timestamp when 2FA was approved",
                        "example": 1723027132
                      },
                      "errorCode": {
                        "type": "string",
                        "description": "Error code when status is Review",
                        "example": "INSUFFICIENT_BALANCE"
                      },
                      "errorDetails": {
                        "type": "string",
                        "description": "Detailed error information",
                        "example": "Insufficient balance for withdrawal"
                      },
                      "reviewedBy": {
                        "type": "string",
                        "description": "Admin email who reviewed the withdrawal",
                        "example": "admin@example.com"
                      },
                      "reviewedAt": {
                        "type": "number",
                        "description": "Timestamp when review happened",
                        "example": 1723027132
                      }
                    },
                    "required": [
                      "withdrawalId",
                      "createdAt",
                      "amount",
                      "currency",
                      "fee",
                      "feeCurrency",
                      "status"
                    ],
                    "description": "Withdrawal Data"
                  },
                  "description": "Response schema for listing withdrawals"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/withdrawals\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/withdrawals\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/withdrawals\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/withdrawals/{withdrawalId}": {
      "get": {
        "summary": "Get withdrawal details",
        "description": "This endpoint retrieves details of a specific withdrawal.",
        "tags": [
          "Withdrawals"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "description": "ID of the withdrawal"
            },
            "required": true,
            "description": "ID of the withdrawal",
            "name": "withdrawalId",
            "in": "path"
          },
          {
            "schema": {
              "type": "string",
              "format": "email",
              "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
              "description": "Email of the user making the request",
              "example": "user@example.com"
            },
            "required": false,
            "description": "Email of the user making the request",
            "name": "userEmail",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful retrieval of withdrawal details",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "withdrawalId": {
                      "anyOf": [
                        {
                          "type": "string",
                          "minLength": 12,
                          "maxLength": 12,
                          "pattern": "^[A-Z0-9]{12}$",
                          "examples": [
                            "01CLFXMT67II",
                            "2R7E5Y5KFXP8",
                            "4FWWRE3Y2URM"
                          ]
                        },
                        {
                          "type": "string",
                          "format": "uuid"
                        }
                      ],
                      "description": "ID of the withdrawal"
                    },
                    "userData": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "userType": {
                              "type": "string",
                              "enum": [
                                "individual"
                              ]
                            },
                            "firstName": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 50,
                              "description": "First name of the user making the deposit (or representative for business)",
                              "examples": [
                                "John",
                                "Alice",
                                "Bob"
                              ]
                            },
                            "lastName": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 100,
                              "description": "Last name of the user making the deposit (or representative for business)",
                              "examples": [
                                "Doe",
                                "Smith",
                                "Johnson"
                              ]
                            },
                            "userEmail": {
                              "type": "string",
                              "maxLength": 254,
                              "format": "email",
                              "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                              "description": "Email of the user making the deposit",
                              "examples": [
                                "user@virtuabroker.com",
                                "john.doe@example.com",
                                "alice@example.com"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "maxLength": 150,
                              "description": "Address of the user making the deposit",
                              "examples": [
                                "123 Main St, Anytown, ES",
                                "456 Elm St, Anytown, ES",
                                "789 Oak St, Anytown, ES"
                              ]
                            },
                            "taxDocumentType": {
                              "type": "string",
                              "maxLength": 50,
                              "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                              "examples": [
                                "CC",
                                "NIT",
                                "CE",
                                "NIF",
                                "Other"
                              ]
                            },
                            "taxId": {
                              "type": "string",
                              "maxLength": 30,
                              "description": "Tax ID of the user making the deposit",
                              "examples": [
                                "123-45-6789",
                                "987-65-4321",
                                "111-22-3333"
                              ]
                            },
                            "country": {
                              "type": "string",
                              "enum": [
                                "US",
                                "CA",
                                "GB",
                                "DE",
                                "FR",
                                "AU",
                                "JP",
                                "KR",
                                "SE",
                                "NO",
                                "DK",
                                "FI",
                                "NL",
                                "BE",
                                "CH",
                                "AT",
                                "NZ",
                                "SG",
                                "IE",
                                "LU",
                                "PT",
                                "ES",
                                "IT",
                                "GR",
                                "CZ",
                                "PL",
                                "HU",
                                "SK",
                                "SI",
                                "EE",
                                "LT",
                                "LV",
                                "IS",
                                "MT",
                                "CY",
                                "HR",
                                "RO",
                                "BG",
                                "BR",
                                "AR",
                                "CL",
                                "MX",
                                "CO",
                                "PE",
                                "PA",
                                "UY",
                                "BO",
                                "ZA",
                                "NG",
                                "KE",
                                "GH",
                                "TZ",
                                "UG",
                                "RW",
                                "MW",
                                "ZM",
                                "BW",
                                "CD",
                                "CI",
                                "CM",
                                "IL",
                                "AE",
                                "QA",
                                "SA",
                                "OM",
                                "KW",
                                "BH",
                                "MY",
                                "PH",
                                "TH",
                                "VN",
                                "ID",
                                "IN",
                                "LK",
                                "NP",
                                "BD",
                                "PK",
                                "EG",
                                "MA",
                                "DZ",
                                "TN",
                                "JO",
                                "LB",
                                "TR",
                                "KH",
                                "MM",
                                "LA",
                                "EN",
                                "BT",
                                "VE",
                                "TW",
                                "HK",
                                "CN"
                              ],
                              "description": "Country code of the user making the deposit",
                              "examples": [
                                "ES",
                                "US",
                                "GB"
                              ]
                            },
                            "state": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 100,
                              "description": "State of the user making the deposit",
                              "examples": [
                                "Madrid",
                                "New York",
                                "London"
                              ]
                            },
                            "postalCode": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 30,
                              "description": "Postal code of the user making the deposit",
                              "examples": [
                                "12345",
                                "67890",
                                "abcde"
                              ]
                            },
                            "city": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 100,
                              "description": "City of the user making the deposit",
                              "examples": [
                                "Madrid",
                                "New York",
                                "London"
                              ]
                            },
                            "dob": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 30,
                              "description": "Date of birth of the user making the deposit",
                              "examples": [
                                "1990-01-01",
                                "1995-05-15",
                                "1988-12-31"
                              ]
                            },
                            "phoneNumber": {
                              "type": "string",
                              "maxLength": 30,
                              "description": "Phone number of the user making the deposit",
                              "examples": [
                                "+447700900123",
                                "+447700900456",
                                "+447700900789"
                              ]
                            },
                            "kycId": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 300,
                              "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                              "examples": [
                                "kyc-12345",
                                "kyc-67890",
                                "kyc-abcde"
                              ]
                            },
                            "activity": {
                              "type": "string",
                              "description": "Activity of the user making the deposit",
                              "examples": [
                                "worker",
                                "business",
                                "student"
                              ]
                            }
                          },
                          "required": [
                            "userType",
                            "firstName",
                            "userEmail",
                            "country"
                          ]
                        },
                        {
                          "type": "object",
                          "properties": {
                            "userType": {
                              "type": "string",
                              "enum": [
                                "business"
                              ]
                            },
                            "businessName": {
                              "type": "string",
                              "maxLength": 150,
                              "description": "Business name (required when userType is business)",
                              "examples": [
                                "Acme Corp",
                                "Tech Solutions Inc",
                                "Global Services Ltd"
                              ]
                            },
                            "firstName": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 50,
                              "description": "First name of the user making the deposit (or representative for business)",
                              "examples": [
                                "John",
                                "Alice",
                                "Bob"
                              ]
                            },
                            "userEmail": {
                              "type": "string",
                              "maxLength": 254,
                              "format": "email",
                              "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                              "description": "Email of the user making the deposit",
                              "examples": [
                                "user@virtuabroker.com",
                                "john.doe@example.com",
                                "alice@example.com"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "maxLength": 150,
                              "description": "Address of the user making the deposit",
                              "examples": [
                                "123 Main St, Anytown, ES",
                                "456 Elm St, Anytown, ES",
                                "789 Oak St, Anytown, ES"
                              ]
                            },
                            "taxDocumentType": {
                              "type": "string",
                              "maxLength": 50,
                              "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                              "examples": [
                                "CC",
                                "NIT",
                                "CE",
                                "NIF",
                                "Other"
                              ]
                            },
                            "taxId": {
                              "type": "string",
                              "maxLength": 30,
                              "description": "Tax ID of the user making the deposit",
                              "examples": [
                                "123-45-6789",
                                "987-65-4321",
                                "111-22-3333"
                              ]
                            },
                            "country": {
                              "type": "string",
                              "enum": [
                                "US",
                                "CA",
                                "GB",
                                "DE",
                                "FR",
                                "AU",
                                "JP",
                                "KR",
                                "SE",
                                "NO",
                                "DK",
                                "FI",
                                "NL",
                                "BE",
                                "CH",
                                "AT",
                                "NZ",
                                "SG",
                                "IE",
                                "LU",
                                "PT",
                                "ES",
                                "IT",
                                "GR",
                                "CZ",
                                "PL",
                                "HU",
                                "SK",
                                "SI",
                                "EE",
                                "LT",
                                "LV",
                                "IS",
                                "MT",
                                "CY",
                                "HR",
                                "RO",
                                "BG",
                                "BR",
                                "AR",
                                "CL",
                                "MX",
                                "CO",
                                "PE",
                                "PA",
                                "UY",
                                "BO",
                                "ZA",
                                "NG",
                                "KE",
                                "GH",
                                "TZ",
                                "UG",
                                "RW",
                                "MW",
                                "ZM",
                                "BW",
                                "CD",
                                "CI",
                                "CM",
                                "IL",
                                "AE",
                                "QA",
                                "SA",
                                "OM",
                                "KW",
                                "BH",
                                "MY",
                                "PH",
                                "TH",
                                "VN",
                                "ID",
                                "IN",
                                "LK",
                                "NP",
                                "BD",
                                "PK",
                                "EG",
                                "MA",
                                "DZ",
                                "TN",
                                "JO",
                                "LB",
                                "TR",
                                "KH",
                                "MM",
                                "LA",
                                "EN",
                                "BT",
                                "VE",
                                "TW",
                                "HK",
                                "CN"
                              ],
                              "description": "Country code of the user making the deposit",
                              "examples": [
                                "ES",
                                "US",
                                "GB"
                              ]
                            },
                            "state": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 100,
                              "description": "State of the user making the deposit",
                              "examples": [
                                "Madrid",
                                "New York",
                                "London"
                              ]
                            },
                            "postalCode": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 30,
                              "description": "Postal code of the user making the deposit",
                              "examples": [
                                "12345",
                                "67890",
                                "abcde"
                              ]
                            },
                            "city": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 100,
                              "description": "City of the user making the deposit",
                              "examples": [
                                "Madrid",
                                "New York",
                                "London"
                              ]
                            },
                            "dob": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 30,
                              "description": "Date of birth of the user making the deposit",
                              "examples": [
                                "1990-01-01",
                                "1995-05-15",
                                "1988-12-31"
                              ]
                            },
                            "phoneNumber": {
                              "type": "string",
                              "maxLength": 30,
                              "description": "Phone number of the user making the deposit",
                              "examples": [
                                "+447700900123",
                                "+447700900456",
                                "+447700900789"
                              ]
                            },
                            "kycId": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 300,
                              "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                              "examples": [
                                "kyc-12345",
                                "kyc-67890",
                                "kyc-abcde"
                              ]
                            },
                            "activity": {
                              "type": "string",
                              "description": "Activity of the user making the deposit",
                              "examples": [
                                "worker",
                                "business",
                                "student"
                              ]
                            }
                          },
                          "required": [
                            "userType",
                            "businessName",
                            "firstName",
                            "userEmail",
                            "country"
                          ]
                        }
                      ],
                      "description": "User data for the withdrawal"
                    },
                    "createdAt": {
                      "type": "number",
                      "description": "Creation time of the withdrawal",
                      "example": 1723027132
                    },
                    "updatedAt": {
                      "type": "number",
                      "description": "Last update time of the withdrawal",
                      "example": 1723027132
                    },
                    "userEmail": {
                      "type": "string",
                      "format": "email",
                      "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                      "description": "Email of the user making the request",
                      "example": "user@example.com"
                    },
                    "amount": {
                      "type": "number",
                      "description": "Amount to be withdrawn. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
                      "example": 1000
                    },
                    "currency": {
                      "type": "string",
                      "description": "Currency of the withdrawal",
                      "example": "EUR"
                    },
                    "fee": {
                      "type": "number",
                      "description": "Fee for the withdrawal. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
                      "example": 10
                    },
                    "feeCurrency": {
                      "type": "string",
                      "description": "Currency of the fee",
                      "example": "EUR"
                    },
                    "destinationTransferData": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "BALANCE"
                              ]
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "Balance transfer details",
                          "title": "Balance"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "iban": {
                              "type": "string",
                              "description": "IBAN number"
                            },
                            "bic": {
                              "type": "string",
                              "description": "BIC number (optional)"
                            },
                            "country": {
                              "type": "string",
                              "description": "Country code"
                            },
                            "accountType": {
                              "type": "string",
                              "enum": [
                                "PERSONAL",
                                "BUSINESS"
                              ],
                              "default": "PERSONAL",
                              "description": "Account type (optional)"
                            },
                            "city": {
                              "type": "string",
                              "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                            },
                            "postalCode": {
                              "type": "string",
                              "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                            },
                            "address": {
                              "type": "string",
                              "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "SEPA"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "iban",
                            "country",
                            "type"
                          ],
                          "description": "SEPA transfer details",
                          "title": "SEPA"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "UK bank account number"
                            },
                            "sortCode": {
                              "type": "string",
                              "description": "UK sort code"
                            },
                            "country": {
                              "type": "string",
                              "enum": [
                                "GB"
                              ],
                              "default": "GB",
                              "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                            },
                            "accountType": {
                              "type": "string",
                              "enum": [
                                "PERSONAL",
                                "BUSINESS"
                              ],
                              "default": "PERSONAL",
                              "description": "Account type (optional)"
                            },
                            "city": {
                              "type": "string",
                              "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                            },
                            "postalCode": {
                              "type": "string",
                              "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                            },
                            "address": {
                              "type": "string",
                              "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "GBP_BANK_TRANSFER"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "accountNumber",
                            "sortCode",
                            "type"
                          ],
                          "description": "GBP domestic bank transfer details",
                          "title": "BankDepositGB"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "US bank account number"
                            },
                            "routingNumber": {
                              "type": "string",
                              "description": "US ABA routing number"
                            },
                            "country": {
                              "type": "string",
                              "enum": [
                                "US"
                              ],
                              "default": "US",
                              "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                            },
                            "accountType": {
                              "type": "string",
                              "enum": [
                                "PERSONAL",
                                "BUSINESS"
                              ],
                              "default": "PERSONAL",
                              "description": "Account type (optional)"
                            },
                            "bankAccountType": {
                              "type": "string",
                              "enum": [
                                "CHECKING",
                                "SAVINGS"
                              ],
                              "default": "CHECKING",
                              "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                            },
                            "city": {
                              "type": "string",
                              "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                            },
                            "postalCode": {
                              "type": "string",
                              "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                            },
                            "state": {
                              "type": "string",
                              "pattern": "^[A-Z]{2}$",
                              "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                            },
                            "address": {
                              "type": "string",
                              "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "ACH_US"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "accountNumber",
                            "routingNumber",
                            "state",
                            "type"
                          ],
                          "description": "USD ACH transfer details",
                          "title": "AchUS"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "linkedBankAccount"
                              ]
                            },
                            "accountLinkId": {
                              "type": "string",
                              "pattern": "^alnk_[0-9a-f]{24}$",
                              "description": "Identifier of one of the account holder own linked bank accounts",
                              "examples": [
                                "alnk_0123456789abcdef01234567"
                              ]
                            }
                          },
                          "required": [
                            "type",
                            "accountLinkId"
                          ],
                          "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                          "title": "LinkedBankAccount",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "ETH"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "ETH destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "ETH"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "MATIC"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "MATIC destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "MATIC"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "SOL"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "SOL destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "\\S"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "\\S"
                                }
                              }
                            }
                          ],
                          "title": "SOL"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "TRON"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "TRON destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "\\S"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "\\S"
                                }
                              }
                            }
                          ],
                          "title": "TRON"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "CELO"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "CELO destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "CELO"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "BTC"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "BTC destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "\\S"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "\\S"
                                }
                              }
                            }
                          ],
                          "title": "BTC"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "SOLANA"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "SOLANA destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "\\S"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "\\S"
                                }
                              }
                            }
                          ],
                          "title": "SOLANA"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "XRP"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "XRP destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "\\S"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "\\S"
                                }
                              }
                            }
                          ],
                          "title": "XRP"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "CARDANO"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "CARDANO destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "\\S"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "\\S"
                                }
                              }
                            }
                          ],
                          "title": "CARDANO"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "BSC"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "BSC destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "BSC"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "ARBITRUM"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "ARBITRUM destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "ARBITRUM"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "OPTIMISM"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "OPTIMISM destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "OPTIMISM"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "AVALANCHE"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "AVALANCHE destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "AVALANCHE"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "BASE"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "BASE destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "BASE"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_COL"
                              ]
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "Recipient ID document number. Required when creating or updating a destination."
                            },
                            "destinationDocumentType": {
                              "type": "string",
                              "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                          "title": "Bank Deposit COL"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "brebKey": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Bre-B key (llave) that identifies the recipient account"
                            },
                            "email": {
                              "type": "string",
                              "description": "Recipient email (optional contact for the Bre-B rail)"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Recipient phone number (optional contact for the Bre-B rail)"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BRE_B_COP"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "brebKey",
                            "type"
                          ],
                          "description": "Colombian Bre-B payout details",
                          "title": "Bre-B COP"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "pattern": "^\\d{4}$",
                              "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                            },
                            "destinationBankAccountNumber": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Recipient bank account number"
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                            },
                            "destinationDocumentType": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Recipient ID document number"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "ACH_COP"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankCode",
                            "destinationBankAccountNumber",
                            "destinationBankAccountType",
                            "destinationDocumentType",
                            "destinationTaxId",
                            "type"
                          ],
                          "description": "Colombian ACH payout details",
                          "title": "ACH COP"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (unused for TWD — no network discovery)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "minLength": 2,
                              "description": "Bank name (required — TWD payouts run over SWIFT)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_TW"
                              ]
                            },
                            "destinationBankBranch": {
                              "type": "string",
                              "minLength": 2,
                              "description": "Bank branch (required — TWD payouts run over SWIFT)"
                            },
                            "bic": {
                              "type": "string",
                              "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                              "description": "SWIFT BIC code (required for TWD payouts)"
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "description": "Type of bank account (legacy, optional)"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "Tax ID of the recipient (legacy, optional)"
                            },
                            "destinationDocumentType": {
                              "type": "string",
                              "description": "Document type of the recipient (legacy, optional)"
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "destinationBankName",
                            "type",
                            "destinationBankBranch",
                            "bic"
                          ],
                          "description": "Taiwan bank deposit details (SWIFT payout)",
                          "title": "Bank Deposit TW"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "description": "Bank code"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationBankBranch": {
                              "type": "string",
                              "description": "Bank branch"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "Tax ID of the recipient"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_BR"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankCode",
                            "destinationBankAccount",
                            "destinationBankBranch",
                            "destinationTaxId",
                            "type"
                          ],
                          "description": "Brazilian bank deposit details",
                          "title": "Bank Deposit BR"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPixCode": {
                              "type": "string",
                              "description": "PIX code"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "Tax ID of the recipient"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "PIX_BR"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPixCode",
                            "destinationTaxId",
                            "type"
                          ],
                          "description": "Brazilian PIX details",
                          "title": "PIX BR"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccountNumber": {
                              "type": "string",
                              "description": "Bank account number"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Name of the bank"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                              "description": "Tax ID of the recipient"
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "description": "Type of bank account"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_VEN"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccountNumber",
                            "destinationBankName",
                            "destinationTaxId",
                            "destinationBankAccountType",
                            "type"
                          ],
                          "description": "Venezuelan bank deposit details",
                          "title": "Bank Deposit VEN"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "description": "Bank code"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                              "description": "Tax ID of the recipient"
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "description": "Type of bank account"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "PHONE_DEPOSIT_VEN"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankCode",
                            "destinationPhoneNumber",
                            "destinationTaxId",
                            "destinationBankAccountType",
                            "type"
                          ],
                          "description": "Venezuelan phone deposit details",
                          "title": "Phone Deposit VEN"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationIFSC": {
                              "type": "string",
                              "description": "IFSC code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_IN"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Bank Deposit IN",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationIFSC": {
                              "type": "string",
                              "description": "IFSC code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "IMPS"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "IMPS",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationIFSC": {
                              "type": "string",
                              "description": "IFSC code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "THAI_QR"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Thai QR",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationIFSC": {
                              "type": "string",
                              "description": "IFSC code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "VIET_QR"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Viet QR",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationIFSC": {
                              "type": "string",
                              "description": "IFSC code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "GCASH"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "GCash",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "Tax ID"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_PAYMENT_IN"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "destinationTaxId",
                            "type"
                          ],
                          "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Mobile Payment IN",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "description": "Bank code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_VN"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "destinationBankCode",
                            "type"
                          ],
                          "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Bank Deposit VN",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "bic": {
                              "type": "string",
                              "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "destinationAddress": {
                              "type": "string",
                              "description": "Address line 1 of the recipient"
                            },
                            "destinationCity": {
                              "type": "string",
                              "description": "Recipient city (defaults to Hong Kong)"
                            },
                            "accountHolderName": {
                              "type": "string",
                              "description": "Bank account holder name if different from payee"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_HK"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "bic",
                            "destinationBankName",
                            "destinationAddress",
                            "type"
                          ],
                          "description": "Hong Kong bank deposit details (HKD bank corridor)",
                          "title": "Bank Deposit HK"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "pattern": "^\\d+$",
                              "description": "CNAPS / bank institution code (numeric, variable length)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "destinationAddress": {
                              "type": "string",
                              "description": "Address line 1 of the recipient"
                            },
                            "destinationCity": {
                              "type": "string",
                              "description": "Recipient city"
                            },
                            "destinationState": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                            },
                            "destinationPostcode": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                            },
                            "destinationPhone": {
                              "type": "string",
                              "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                            },
                            "accountHolderName": {
                              "type": "string",
                              "description": "Bank account holder name if different from payee"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_CN"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "destinationBankCode",
                            "destinationBankName",
                            "destinationAddress",
                            "destinationCity",
                            "destinationState",
                            "destinationPostcode",
                            "type"
                          ],
                          "description": "China mainland bank deposit details (CNY bank corridor)",
                          "title": "Bank Deposit CN"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_AR"
                              ]
                            },
                            "destinationCBU": {
                              "type": "string",
                              "description": "CBU — 22-digit bank account key (legacy, optional)"
                            },
                            "destinationCVU": {
                              "type": "string",
                              "description": "CVU — 22-digit virtual account key (legacy, optional)"
                            },
                            "destinationAlias": {
                              "type": "string",
                              "description": "Account alias (legacy, optional)"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                            },
                            "destinationDocumentType": {
                              "type": "string",
                              "description": "Document type of the recipient (legacy, optional)"
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Argentinian bank deposit details",
                          "title": "Bank Deposit AR"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Recipient bank name (required for Chilean bank payouts)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_CL"
                              ]
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "minLength": 1,
                              "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                            },
                            "destinationDocumentType": {
                              "type": "string",
                              "description": "Document type of the recipient (legacy, optional)"
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "destinationBankName",
                            "type",
                            "destinationBankAccountType",
                            "destinationTaxId"
                          ],
                          "description": "Chilean bank deposit details",
                          "title": "Bank Deposit CL"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "minLength": 2,
                              "maxLength": 30,
                              "description": "Recipient name (required, 2–30 characters)"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 11,
                              "description": "Bank account number (max 11 digits for Bolivian accounts)"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (unused for BOB — no network discovery)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "maxLength": 20,
                              "description": "Bank name (optional, max 20 characters)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_BO"
                              ]
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 15,
                              "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type",
                            "destinationTaxId"
                          ],
                          "description": "Bolivian bank deposit details",
                          "title": "Bank Deposit BO"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_PE"
                              ]
                            },
                            "destinationCCI": {
                              "type": "string",
                              "description": "CCI — 20-digit interbank account code (legacy, optional)"
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "description": "Account type (corriente/ahorro) (legacy, optional)"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                            },
                            "destinationDocumentType": {
                              "type": "string",
                              "description": "Document type of the recipient (legacy, optional)"
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "destinationNetworkId",
                            "type"
                          ],
                          "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Bank Deposit PE",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "pattern": "^\\d{3}$",
                              "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                            },
                            "destinationBankAccountNumber": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 20,
                              "description": "Recipient bank account number (max 20)"
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "enum": [
                                "CORRIENTE",
                                "AHORROS",
                                "PHONE"
                              ],
                              "description": "Bank account type"
                            },
                            "destinationCCI": {
                              "type": "string",
                              "pattern": "^\\d{1,20}$",
                              "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                            },
                            "destinationDocumentType": {
                              "type": "string",
                              "enum": [
                                "CC",
                                "CE",
                                "RUC",
                                "PAS",
                                "PAR",
                                "LMI",
                                "OTHER"
                              ],
                              "description": "Recipient identification type"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 50,
                              "description": "Recipient identification number (max 50)"
                            },
                            "email": {
                              "type": "string",
                              "pattern": "^.+@.+\\..+$",
                              "description": "Recipient email (required for PEN payouts)"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "pattern": "^\\d{1,9}$",
                              "description": "Recipient phone number (required, max 9 digits)"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_PEN"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankCode",
                            "destinationBankAccountNumber",
                            "destinationBankAccountType",
                            "destinationCCI",
                            "destinationDocumentType",
                            "destinationTaxId",
                            "email",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Peruvian bank deposit details (bank-code payout corridor).",
                          "title": "Bank Deposit PEN"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_NG"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Nigeria bank deposit details",
                          "title": "Bank Deposit NG"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_KE"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Kenya bank deposit details",
                          "title": "Bank Deposit KE"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_GH"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Bank Deposit GH",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_ZA"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "South Africa bank deposit details",
                          "title": "Bank Deposit ZA"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_TZ"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Tanzania bank deposit details",
                          "title": "Bank Deposit TZ"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_UG"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Uganda bank deposit details",
                          "title": "Bank Deposit UG"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_RW"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Rwanda bank deposit details",
                          "title": "Bank Deposit RW"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_MW"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Malawi bank deposit details",
                          "title": "Bank Deposit MW"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_ZM"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Zambia bank deposit details",
                          "title": "Bank Deposit ZM"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_BW"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Botswana bank deposit details",
                          "title": "Bank Deposit BW"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_CD"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Bank Deposit CD",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_XOF"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "West African CFA bank deposit details",
                          "title": "Bank Deposit XOF"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_XAF"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Central African CFA bank deposit details",
                          "title": "Bank Deposit XAF"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_NG"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Nigeria mobile money details",
                          "title": "Mobile Money NG"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_KE"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Kenya mobile money details",
                          "title": "Mobile Money KE"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_GH"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Mobile Money GH",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_ZA"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "South Africa mobile money details",
                          "title": "Mobile Money ZA"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_TZ"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Tanzania mobile money details",
                          "title": "Mobile Money TZ"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_UG"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Uganda mobile money details",
                          "title": "Mobile Money UG"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_RW"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Rwanda mobile money details",
                          "title": "Mobile Money RW"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_MW"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Malawi mobile money details",
                          "title": "Mobile Money MW"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_ZM"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Zambia mobile money details",
                          "title": "Mobile Money ZM"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_BW"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Botswana mobile money details",
                          "title": "Mobile Money BW"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_CD"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Mobile Money CD",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_XOF"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "West African CFA mobile money details",
                          "title": "Mobile Money XOF"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_XAF"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Central African CFA mobile money details",
                          "title": "Mobile Money XAF"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "description": "Bank code"
                            },
                            "destinationBankAccountNumber": {
                              "type": "string",
                              "description": "Bank account number (18-digit CLABE)"
                            },
                            "numericReference": {
                              "type": "string",
                              "description": "Numeric reference"
                            },
                            "notesReference": {
                              "type": "string",
                              "description": "Notes reference"
                            },
                            "destinationClabe": {
                              "type": "string",
                              "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_MX"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccountNumber",
                            "type"
                          ],
                          "description": "Mexican bank deposit details",
                          "title": "Bank Deposit MX"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPseNumber": {
                              "type": "string",
                              "description": "PSE number"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "PSE"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPseNumber",
                            "type"
                          ],
                          "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "PSE",
                          "deprecated": true
                        }
                      ],
                      "description": "The details required for the end user destination transfer method."
                    },
                    "status": {
                      "anyOf": [
                        {
                          "type": "string",
                          "enum": [
                            "Pending",
                            "Processing",
                            "Success",
                            "Failed",
                            "Canceled",
                            "Reviewing"
                          ],
                          "description": "Common status values that are shared across all operation types",
                          "examples": [
                            "Pending",
                            "Processing",
                            "Success",
                            "Failed",
                            "Canceled",
                            "Reviewing"
                          ]
                        },
                        {
                          "type": "string",
                          "enum": [
                            "PendingCancel",
                            "PendingWithdrawal",
                            "PendingVerification",
                            "Pending2FA",
                            "Compliance",
                            "Accepted",
                            "Approved",
                            "Rejected",
                            "Review"
                          ]
                        }
                      ],
                      "description": "Status of the withdrawal",
                      "examples": [
                        "Pending",
                        "Pending2FA",
                        "Compliance",
                        "Accepted",
                        "Approved",
                        "Success",
                        "Failed",
                        "Review",
                        "Rejected"
                      ]
                    },
                    "withdrawalInfo": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "BALANCE"
                              ]
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "Balance transfer details",
                          "title": "Balance"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "iban": {
                              "type": "string",
                              "description": "IBAN number"
                            },
                            "bic": {
                              "type": "string",
                              "description": "BIC number (optional)"
                            },
                            "country": {
                              "type": "string",
                              "description": "Country code"
                            },
                            "accountType": {
                              "type": "string",
                              "enum": [
                                "PERSONAL",
                                "BUSINESS"
                              ],
                              "default": "PERSONAL",
                              "description": "Account type (optional)"
                            },
                            "city": {
                              "type": "string",
                              "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                            },
                            "postalCode": {
                              "type": "string",
                              "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                            },
                            "address": {
                              "type": "string",
                              "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "SEPA"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "iban",
                            "country",
                            "type"
                          ],
                          "description": "SEPA transfer details",
                          "title": "SEPA"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "UK bank account number"
                            },
                            "sortCode": {
                              "type": "string",
                              "description": "UK sort code"
                            },
                            "country": {
                              "type": "string",
                              "enum": [
                                "GB"
                              ],
                              "default": "GB",
                              "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                            },
                            "accountType": {
                              "type": "string",
                              "enum": [
                                "PERSONAL",
                                "BUSINESS"
                              ],
                              "default": "PERSONAL",
                              "description": "Account type (optional)"
                            },
                            "city": {
                              "type": "string",
                              "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                            },
                            "postalCode": {
                              "type": "string",
                              "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                            },
                            "address": {
                              "type": "string",
                              "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "GBP_BANK_TRANSFER"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "accountNumber",
                            "sortCode",
                            "type"
                          ],
                          "description": "GBP domestic bank transfer details",
                          "title": "BankDepositGB"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "accountNumber": {
                              "type": "string",
                              "description": "US bank account number"
                            },
                            "routingNumber": {
                              "type": "string",
                              "description": "US ABA routing number"
                            },
                            "country": {
                              "type": "string",
                              "enum": [
                                "US"
                              ],
                              "default": "US",
                              "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                            },
                            "accountType": {
                              "type": "string",
                              "enum": [
                                "PERSONAL",
                                "BUSINESS"
                              ],
                              "default": "PERSONAL",
                              "description": "Account type (optional)"
                            },
                            "bankAccountType": {
                              "type": "string",
                              "enum": [
                                "CHECKING",
                                "SAVINGS"
                              ],
                              "default": "CHECKING",
                              "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                            },
                            "city": {
                              "type": "string",
                              "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                            },
                            "postalCode": {
                              "type": "string",
                              "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                            },
                            "state": {
                              "type": "string",
                              "pattern": "^[A-Z]{2}$",
                              "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                            },
                            "address": {
                              "type": "string",
                              "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "ACH_US"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "accountNumber",
                            "routingNumber",
                            "state",
                            "type"
                          ],
                          "description": "USD ACH transfer details",
                          "title": "AchUS"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "linkedBankAccount"
                              ]
                            },
                            "accountLinkId": {
                              "type": "string",
                              "pattern": "^alnk_[0-9a-f]{24}$",
                              "description": "Identifier of one of the account holder own linked bank accounts",
                              "examples": [
                                "alnk_0123456789abcdef01234567"
                              ]
                            }
                          },
                          "required": [
                            "type",
                            "accountLinkId"
                          ],
                          "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                          "title": "LinkedBankAccount",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "ETH"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "ETH destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "ETH"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "MATIC"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "MATIC destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "MATIC"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "SOL"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "SOL destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "\\S"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "\\S"
                                }
                              }
                            }
                          ],
                          "title": "SOL"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "TRON"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "TRON destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "\\S"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "\\S"
                                }
                              }
                            }
                          ],
                          "title": "TRON"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "CELO"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "CELO destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "CELO"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "BTC"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "BTC destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "\\S"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "\\S"
                                }
                              }
                            }
                          ],
                          "title": "BTC"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "SOLANA"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "SOLANA destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "\\S"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "\\S"
                                }
                              }
                            }
                          ],
                          "title": "SOLANA"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "XRP"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "XRP destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "\\S"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "\\S"
                                }
                              }
                            }
                          ],
                          "title": "XRP"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "CARDANO"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "CARDANO destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "\\S"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "\\S"
                                }
                              }
                            }
                          ],
                          "title": "CARDANO"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "BSC"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "BSC destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "BSC"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "ARBITRUM"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "ARBITRUM destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "ARBITRUM"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "OPTIMISM"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "OPTIMISM destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "OPTIMISM"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "AVALANCHE"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "AVALANCHE destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "AVALANCHE"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "BASE"
                              ]
                            },
                            "address": {
                              "type": "string",
                              "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                            },
                            "memo": {
                              "type": "string",
                              "description": "Memo for the wallet, when the chain uses one"
                            },
                            "txId": {
                              "type": "string",
                              "description": "Blockchain transaction ID"
                            },
                            "txUrlScan": {
                              "type": "string",
                              "description": "Blockchain explorer URL for the transaction"
                            },
                            "destinationWalletAddress": {
                              "type": "string",
                              "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                            },
                            "destinationWalletMemo": {
                              "type": "string",
                              "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                            },
                            "destinationNetwork": {
                              "type": "string",
                              "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                            },
                            "destinationCurrencySymbol": {
                              "type": "string",
                              "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                            }
                          },
                          "required": [
                            "type"
                          ],
                          "description": "BASE destination details",
                          "anyOf": [
                            {
                              "required": [
                                "address"
                              ],
                              "properties": {
                                "address": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            },
                            {
                              "required": [
                                "destinationWalletAddress"
                              ],
                              "properties": {
                                "destinationWalletAddress": {
                                  "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                }
                              }
                            }
                          ],
                          "title": "BASE"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_COL"
                              ]
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "Recipient ID document number. Required when creating or updating a destination."
                            },
                            "destinationDocumentType": {
                              "type": "string",
                              "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                          "title": "Bank Deposit COL"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "brebKey": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Bre-B key (llave) that identifies the recipient account"
                            },
                            "email": {
                              "type": "string",
                              "description": "Recipient email (optional contact for the Bre-B rail)"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Recipient phone number (optional contact for the Bre-B rail)"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BRE_B_COP"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "brebKey",
                            "type"
                          ],
                          "description": "Colombian Bre-B payout details",
                          "title": "Bre-B COP"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "pattern": "^\\d{4}$",
                              "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                            },
                            "destinationBankAccountNumber": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Recipient bank account number"
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                            },
                            "destinationDocumentType": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Recipient ID document number"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "ACH_COP"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankCode",
                            "destinationBankAccountNumber",
                            "destinationBankAccountType",
                            "destinationDocumentType",
                            "destinationTaxId",
                            "type"
                          ],
                          "description": "Colombian ACH payout details",
                          "title": "ACH COP"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (unused for TWD — no network discovery)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "minLength": 2,
                              "description": "Bank name (required — TWD payouts run over SWIFT)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_TW"
                              ]
                            },
                            "destinationBankBranch": {
                              "type": "string",
                              "minLength": 2,
                              "description": "Bank branch (required — TWD payouts run over SWIFT)"
                            },
                            "bic": {
                              "type": "string",
                              "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                              "description": "SWIFT BIC code (required for TWD payouts)"
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "description": "Type of bank account (legacy, optional)"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "Tax ID of the recipient (legacy, optional)"
                            },
                            "destinationDocumentType": {
                              "type": "string",
                              "description": "Document type of the recipient (legacy, optional)"
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "destinationBankName",
                            "type",
                            "destinationBankBranch",
                            "bic"
                          ],
                          "description": "Taiwan bank deposit details (SWIFT payout)",
                          "title": "Bank Deposit TW"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "description": "Bank code"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationBankBranch": {
                              "type": "string",
                              "description": "Bank branch"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "Tax ID of the recipient"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_BR"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankCode",
                            "destinationBankAccount",
                            "destinationBankBranch",
                            "destinationTaxId",
                            "type"
                          ],
                          "description": "Brazilian bank deposit details",
                          "title": "Bank Deposit BR"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPixCode": {
                              "type": "string",
                              "description": "PIX code"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "Tax ID of the recipient"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "PIX_BR"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPixCode",
                            "destinationTaxId",
                            "type"
                          ],
                          "description": "Brazilian PIX details",
                          "title": "PIX BR"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccountNumber": {
                              "type": "string",
                              "description": "Bank account number"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Name of the bank"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                              "description": "Tax ID of the recipient"
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "description": "Type of bank account"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_VEN"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccountNumber",
                            "destinationBankName",
                            "destinationTaxId",
                            "destinationBankAccountType",
                            "type"
                          ],
                          "description": "Venezuelan bank deposit details",
                          "title": "Bank Deposit VEN"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "description": "Bank code"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                              "description": "Tax ID of the recipient"
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "description": "Type of bank account"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "PHONE_DEPOSIT_VEN"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankCode",
                            "destinationPhoneNumber",
                            "destinationTaxId",
                            "destinationBankAccountType",
                            "type"
                          ],
                          "description": "Venezuelan phone deposit details",
                          "title": "Phone Deposit VEN"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationIFSC": {
                              "type": "string",
                              "description": "IFSC code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_IN"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Bank Deposit IN",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationIFSC": {
                              "type": "string",
                              "description": "IFSC code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "IMPS"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "IMPS",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationIFSC": {
                              "type": "string",
                              "description": "IFSC code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "THAI_QR"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Thai QR",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationIFSC": {
                              "type": "string",
                              "description": "IFSC code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "VIET_QR"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Viet QR",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationIFSC": {
                              "type": "string",
                              "description": "IFSC code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "GCASH"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "GCash",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "Tax ID"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_PAYMENT_IN"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "destinationTaxId",
                            "type"
                          ],
                          "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Mobile Payment IN",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "description": "Bank code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_VN"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "destinationBankCode",
                            "type"
                          ],
                          "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Bank Deposit VN",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "bic": {
                              "type": "string",
                              "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "destinationAddress": {
                              "type": "string",
                              "description": "Address line 1 of the recipient"
                            },
                            "destinationCity": {
                              "type": "string",
                              "description": "Recipient city (defaults to Hong Kong)"
                            },
                            "accountHolderName": {
                              "type": "string",
                              "description": "Bank account holder name if different from payee"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_HK"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "bic",
                            "destinationBankName",
                            "destinationAddress",
                            "type"
                          ],
                          "description": "Hong Kong bank deposit details (HKD bank corridor)",
                          "title": "Bank Deposit HK"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "pattern": "^\\d+$",
                              "description": "CNAPS / bank institution code (numeric, variable length)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name"
                            },
                            "destinationAddress": {
                              "type": "string",
                              "description": "Address line 1 of the recipient"
                            },
                            "destinationCity": {
                              "type": "string",
                              "description": "Recipient city"
                            },
                            "destinationState": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                            },
                            "destinationPostcode": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                            },
                            "destinationPhone": {
                              "type": "string",
                              "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                            },
                            "accountHolderName": {
                              "type": "string",
                              "description": "Bank account holder name if different from payee"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_CN"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "destinationBankCode",
                            "destinationBankName",
                            "destinationAddress",
                            "destinationCity",
                            "destinationState",
                            "destinationPostcode",
                            "type"
                          ],
                          "description": "China mainland bank deposit details (CNY bank corridor)",
                          "title": "Bank Deposit CN"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_AR"
                              ]
                            },
                            "destinationCBU": {
                              "type": "string",
                              "description": "CBU — 22-digit bank account key (legacy, optional)"
                            },
                            "destinationCVU": {
                              "type": "string",
                              "description": "CVU — 22-digit virtual account key (legacy, optional)"
                            },
                            "destinationAlias": {
                              "type": "string",
                              "description": "Account alias (legacy, optional)"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                            },
                            "destinationDocumentType": {
                              "type": "string",
                              "description": "Document type of the recipient (legacy, optional)"
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Argentinian bank deposit details",
                          "title": "Bank Deposit AR"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Recipient bank name (required for Chilean bank payouts)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_CL"
                              ]
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "minLength": 1,
                              "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "minLength": 1,
                              "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                            },
                            "destinationDocumentType": {
                              "type": "string",
                              "description": "Document type of the recipient (legacy, optional)"
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "destinationBankName",
                            "type",
                            "destinationBankAccountType",
                            "destinationTaxId"
                          ],
                          "description": "Chilean bank deposit details",
                          "title": "Bank Deposit CL"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "minLength": 2,
                              "maxLength": 30,
                              "description": "Recipient name (required, 2–30 characters)"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 11,
                              "description": "Bank account number (max 11 digits for Bolivian accounts)"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (unused for BOB — no network discovery)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "maxLength": 20,
                              "description": "Bank name (optional, max 20 characters)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_BO"
                              ]
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 15,
                              "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type",
                            "destinationTaxId"
                          ],
                          "description": "Bolivian bank deposit details",
                          "title": "Bank Deposit BO"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_PE"
                              ]
                            },
                            "destinationCCI": {
                              "type": "string",
                              "description": "CCI — 20-digit interbank account code (legacy, optional)"
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "description": "Account type (corriente/ahorro) (legacy, optional)"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                            },
                            "destinationDocumentType": {
                              "type": "string",
                              "description": "Document type of the recipient (legacy, optional)"
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "destinationNetworkId",
                            "type"
                          ],
                          "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Bank Deposit PE",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "pattern": "^\\d{3}$",
                              "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                            },
                            "destinationBankAccountNumber": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 20,
                              "description": "Recipient bank account number (max 20)"
                            },
                            "destinationBankAccountType": {
                              "type": "string",
                              "enum": [
                                "CORRIENTE",
                                "AHORROS",
                                "PHONE"
                              ],
                              "description": "Bank account type"
                            },
                            "destinationCCI": {
                              "type": "string",
                              "pattern": "^\\d{1,20}$",
                              "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                            },
                            "destinationDocumentType": {
                              "type": "string",
                              "enum": [
                                "CC",
                                "CE",
                                "RUC",
                                "PAS",
                                "PAR",
                                "LMI",
                                "OTHER"
                              ],
                              "description": "Recipient identification type"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 50,
                              "description": "Recipient identification number (max 50)"
                            },
                            "email": {
                              "type": "string",
                              "pattern": "^.+@.+\\..+$",
                              "description": "Recipient email (required for PEN payouts)"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "pattern": "^\\d{1,9}$",
                              "description": "Recipient phone number (required, max 9 digits)"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_PEN"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankCode",
                            "destinationBankAccountNumber",
                            "destinationBankAccountType",
                            "destinationCCI",
                            "destinationDocumentType",
                            "destinationTaxId",
                            "email",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Peruvian bank deposit details (bank-code payout corridor).",
                          "title": "Bank Deposit PEN"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_NG"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Nigeria bank deposit details",
                          "title": "Bank Deposit NG"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_KE"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Kenya bank deposit details",
                          "title": "Bank Deposit KE"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_GH"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Bank Deposit GH",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_ZA"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "South Africa bank deposit details",
                          "title": "Bank Deposit ZA"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_TZ"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Tanzania bank deposit details",
                          "title": "Bank Deposit TZ"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_UG"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Uganda bank deposit details",
                          "title": "Bank Deposit UG"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_RW"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Rwanda bank deposit details",
                          "title": "Bank Deposit RW"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_MW"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Malawi bank deposit details",
                          "title": "Bank Deposit MW"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_ZM"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Zambia bank deposit details",
                          "title": "Bank Deposit ZM"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_BW"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Botswana bank deposit details",
                          "title": "Bank Deposit BW"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_CD"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Bank Deposit CD",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_XOF"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "West African CFA bank deposit details",
                          "title": "Bank Deposit XOF"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankAccount": {
                              "type": "string",
                              "description": "Bank account"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationBankName is given)"
                            },
                            "destinationBankName": {
                              "type": "string",
                              "description": "Bank name (used to resolve the network when id is omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_XAF"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccount",
                            "type"
                          ],
                          "description": "Central African CFA bank deposit details",
                          "title": "Bank Deposit XAF"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_NG"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Nigeria mobile money details",
                          "title": "Mobile Money NG"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_KE"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Kenya mobile money details",
                          "title": "Mobile Money KE"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_GH"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Mobile Money GH",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_ZA"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "South Africa mobile money details",
                          "title": "Mobile Money ZA"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_TZ"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Tanzania mobile money details",
                          "title": "Mobile Money TZ"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_UG"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Uganda mobile money details",
                          "title": "Mobile Money UG"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_RW"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Rwanda mobile money details",
                          "title": "Mobile Money RW"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_MW"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Malawi mobile money details",
                          "title": "Mobile Money MW"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_ZM"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Zambia mobile money details",
                          "title": "Mobile Money ZM"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_BW"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Botswana mobile money details",
                          "title": "Mobile Money BW"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_CD"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "Mobile Money CD",
                          "deprecated": true
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_XOF"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "West African CFA mobile money details",
                          "title": "Mobile Money XOF"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPhoneNumber": {
                              "type": "string",
                              "description": "Phone number"
                            },
                            "destinationNetworkId": {
                              "type": "string",
                              "description": "Payout network id (optional if destinationNetworkName is given)"
                            },
                            "destinationNetworkName": {
                              "type": "string",
                              "description": "Mobile money network name (resolves the network when id omitted)"
                            },
                            "country": {
                              "type": "string",
                              "description": "ISO 3166 country code"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "MOBILE_MONEY_XAF"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPhoneNumber",
                            "type"
                          ],
                          "description": "Central African CFA mobile money details",
                          "title": "Mobile Money XAF"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationBankCode": {
                              "type": "string",
                              "description": "Bank code"
                            },
                            "destinationBankAccountNumber": {
                              "type": "string",
                              "description": "Bank account number (18-digit CLABE)"
                            },
                            "numericReference": {
                              "type": "string",
                              "description": "Numeric reference"
                            },
                            "notesReference": {
                              "type": "string",
                              "description": "Notes reference"
                            },
                            "destinationClabe": {
                              "type": "string",
                              "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                            },
                            "destinationTaxId": {
                              "type": "string",
                              "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "BANK_DEPOSIT_MX"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationBankAccountNumber",
                            "type"
                          ],
                          "description": "Mexican bank deposit details",
                          "title": "Bank Deposit MX"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "destinationName": {
                              "type": "string",
                              "description": "Name of the recipient"
                            },
                            "destinationPseNumber": {
                              "type": "string",
                              "description": "PSE number"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "PSE"
                              ]
                            }
                          },
                          "required": [
                            "destinationName",
                            "destinationPseNumber",
                            "type"
                          ],
                          "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                          "title": "PSE",
                          "deprecated": true
                        }
                      ],
                      "description": "Detailed withdrawal information",
                      "title": "WithdrawalInfo"
                    },
                    "source": {
                      "type": "string",
                      "enum": [
                        "ui",
                        "apiApp",
                        "externalApi",
                        "internal"
                      ],
                      "description": "Source of withdrawal creation",
                      "example": "externalApi"
                    },
                    "requires2FA": {
                      "type": "boolean",
                      "description": "Whether 2FA is required for this withdrawal",
                      "example": false
                    },
                    "twoFactorToken": {
                      "type": "string",
                      "description": "2FA token for email approval",
                      "example": "abc123"
                    },
                    "twoFactorApprovedAt": {
                      "type": "number",
                      "description": "Timestamp when 2FA was approved",
                      "example": 1723027132
                    },
                    "errorCode": {
                      "type": "string",
                      "description": "Error code when status is Review",
                      "example": "INSUFFICIENT_BALANCE"
                    },
                    "errorDetails": {
                      "type": "string",
                      "description": "Detailed error information",
                      "example": "Insufficient balance for withdrawal"
                    },
                    "reviewedBy": {
                      "type": "string",
                      "description": "Admin email who reviewed the withdrawal",
                      "example": "admin@example.com"
                    },
                    "reviewedAt": {
                      "type": "number",
                      "description": "Timestamp when review happened",
                      "example": 1723027132
                    }
                  },
                  "required": [
                    "withdrawalId",
                    "createdAt",
                    "amount",
                    "currency",
                    "fee",
                    "feeCurrency",
                    "status"
                  ],
                  "description": "Response schema for getting withdrawal details"
                }
              }
            }
          },
          "404": {
            "description": "Withdrawal not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/withdrawals/wdr_8Hq2Lm4v\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/withdrawals/wdr_8Hq2Lm4v\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/withdrawals/wdr_8Hq2Lm4v\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      },
      "delete": {
        "summary": "Delete a withdrawal",
        "description": "This endpoint cancels a specific withdrawal. The withdrawal must be in status Pending. Once executed, the withdrawal changes to status PendingCancel, and the reserved balance is restored.",
        "tags": [
          "Withdrawals"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "description": "ID of the withdrawal"
            },
            "required": true,
            "description": "ID of the withdrawal",
            "name": "withdrawalId",
            "in": "path"
          },
          {
            "schema": {
              "type": "string",
              "format": "email",
              "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
              "description": "Email of the user making the request",
              "example": "user@example.com"
            },
            "required": false,
            "description": "Email of the user making the request",
            "name": "userEmail",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful deletion of withdrawal",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {},
                  "description": "Response schema for successful deletion"
                }
              }
            }
          },
          "400": {
            "description": "Bad request - Withdrawal cannot be deleted (wrong status)",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "404": {
            "description": "Withdrawal not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/withdrawals/wdr_8Hq2Lm4v\", {\n    method: \"DELETE\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.delete(\n    \"https://api.virtuabroker.com/v1/withdrawals/wdr_8Hq2Lm4v\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X DELETE \"https://api.virtuabroker.com/v1/withdrawals/wdr_8Hq2Lm4v\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/simulate/incoming-transfer/deposit": {
      "post": {
        "summary": "Simulate the inbound transfer that funds a deposit (stage only)",
        "description": "Stands in for the money movement a deposit is waiting on, so a stage deposit leaves `Pending` without real funds. **Required:** `depositId` and `amount`. **Optional:** `scenario` — `success` (default), `processing`, `compliance_review` or `failed` — plus `counterparty` (`name`, `iban`) for fiat, or `fromAddress` for crypto. Send the expected amount to get `deposit_completed`; a different amount yields `deposit_partially_completed`. The webhooks fire exactly as they would for a real transfer.\n\n**Stage only** — not mounted on production.",
        "tags": [
          "Simulation"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "depositId": {
                    "type": "string",
                    "minLength": 1
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "exclusiveMinimum": true
                  },
                  "scenario": {
                    "type": "string",
                    "enum": [
                      "success",
                      "failed",
                      "compliance_review",
                      "processing"
                    ],
                    "default": "success"
                  },
                  "counterparty": {
                    "type": "object",
                    "properties": {
                      "name": {
                        "type": "string",
                        "minLength": 1
                      },
                      "iban": {
                        "type": "string"
                      },
                      "accountNumber": {
                        "type": "string"
                      },
                      "routingNumber": {
                        "type": "string"
                      },
                      "clabe": {
                        "type": "string"
                      },
                      "taxId": {
                        "type": "string"
                      },
                      "pixKey": {
                        "type": "string"
                      },
                      "mobileMoneyNumber": {
                        "type": "string"
                      },
                      "email": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 254,
                        "format": "email",
                        "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                        "description": "Email address"
                      },
                      "address": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "name"
                    ],
                    "additionalProperties": false
                  },
                  "fromAddress": {
                    "type": "string"
                  }
                },
                "required": [
                  "depositId",
                  "amount"
                ],
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Simulation accepted and dispatched",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    }
                  },
                  "required": [
                    "success"
                  ],
                  "additionalProperties": false
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "404": {
            "description": "Not found — the referenced entity does not exist, or simulation is not enabled in this environment",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api-stage.virtuabroker.com/v1/simulate/incoming-transfer/deposit\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"depositId\": \"string\",\n      \"amount\": 0,\n      \"scenario\": \"success\",\n      \"counterparty\": {\n        \"name\": \"string\",\n        \"iban\": \"string\",\n        \"accountNumber\": \"string\",\n        \"routingNumber\": \"string\",\n        \"clabe\": \"string\",\n        \"taxId\": \"string\",\n        \"pixKey\": \"string\",\n        \"mobileMoneyNumber\": \"string\",\n        \"email\": \"string\",\n        \"address\": \"string\"\n      },\n      \"fromAddress\": \"string\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api-stage.virtuabroker.com/v1/simulate/incoming-transfer/deposit\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"depositId\": \"string\",\n        \"amount\": 0,\n        \"scenario\": \"success\",\n        \"counterparty\": {\n            \"name\": \"string\",\n            \"iban\": \"string\",\n            \"accountNumber\": \"string\",\n            \"routingNumber\": \"string\",\n            \"clabe\": \"string\",\n            \"taxId\": \"string\",\n            \"pixKey\": \"string\",\n            \"mobileMoneyNumber\": \"string\",\n            \"email\": \"string\",\n            \"address\": \"string\"\n        },\n        \"fromAddress\": \"string\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api-stage.virtuabroker.com/v1/simulate/incoming-transfer/deposit\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"depositId\": \"string\",\n  \"amount\": 0,\n  \"scenario\": \"success\",\n  \"counterparty\": {\n    \"name\": \"string\",\n    \"iban\": \"string\",\n    \"accountNumber\": \"string\",\n    \"routingNumber\": \"string\",\n    \"clabe\": \"string\",\n    \"taxId\": \"string\",\n    \"pixKey\": \"string\",\n    \"mobileMoneyNumber\": \"string\",\n    \"email\": \"string\",\n    \"address\": \"string\"\n  },\n  \"fromAddress\": \"string\"\n}'"
          }
        ]
      }
    },
    "/v1/simulate/incoming-transfer/order": {
      "post": {
        "summary": "Simulate the inbound transfer that funds an order (stage only)",
        "description": "Same as the deposit variant, but advances an order: the origin funds are treated as received, the conversion proceeds, and the payout continues its lifecycle. **Required:** `orderId` and `amount`. **Optional:** `scenario` (`success` default, `processing`, `compliance_review`, `failed`), `counterparty` for fiat, `fromAddress` for crypto.\n\n**Stage only** — not mounted on production.",
        "tags": [
          "Simulation"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "orderId": {
                    "type": "string",
                    "minLength": 1
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "exclusiveMinimum": true
                  },
                  "scenario": {
                    "type": "string",
                    "enum": [
                      "success",
                      "failed",
                      "compliance_review",
                      "processing"
                    ],
                    "default": "success"
                  },
                  "counterparty": {
                    "type": "object",
                    "properties": {
                      "name": {
                        "type": "string",
                        "minLength": 1
                      },
                      "iban": {
                        "type": "string"
                      },
                      "accountNumber": {
                        "type": "string"
                      },
                      "routingNumber": {
                        "type": "string"
                      },
                      "clabe": {
                        "type": "string"
                      },
                      "taxId": {
                        "type": "string"
                      },
                      "pixKey": {
                        "type": "string"
                      },
                      "mobileMoneyNumber": {
                        "type": "string"
                      },
                      "email": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 254,
                        "format": "email",
                        "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                        "description": "Email address"
                      },
                      "address": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "name"
                    ],
                    "additionalProperties": false
                  },
                  "fromAddress": {
                    "type": "string"
                  },
                  "testScenario": {
                    "type": "string",
                    "enum": [
                      "RECEIVED_LESS_AMOUNT",
                      "RECEIVED_MORE_AMOUNT",
                      "EXCHANGE_SUCCESS",
                      "EXCHANGE_ERROR",
                      "EXCHANGE_HIGH_FEE",
                      "WITHDRAW_SUCCESS",
                      "WITHDRAW_ERROR",
                      "WITHDRAW_HIGH_GAS",
                      "OFFRAMP_SUCCESS",
                      "OFFRAMP_ERROR",
                      "OFFRAMP_HIGH_FEE",
                      "RECEIVED_TO_EXCHANGE_ERROR",
                      "EXCHANGED_TO_WITHDRAW_ERROR",
                      "WITHDRAWN_TO_OFFRAMP_ERROR",
                      "KYC_REQUIRED",
                      "PRICE_CHANGED",
                      "INSUFFICIENT_BALANCE",
                      "OFFRAMP_VALIDATION_ERROR_NAME",
                      "OFFRAMP_VALIDATION_ERROR_TAX_ID_REQUIRED",
                      "OFFRAMP_VALIDATION_ERROR_TAX_ID_FORMAT",
                      "OFFRAMP_VALIDATION_ERROR_AMOUNT",
                      "OFFRAMP_VALIDATION_ERROR_BANK_CODE",
                      "OFFRAMP_VALIDATION_ERROR_ACCOUNT_NUMBER",
                      "OFFRAMP_VALIDATION_ERROR_PHONE_BANK_CODE",
                      "OFFRAMP_VALIDATION_ERROR_PHONE_NUMBER"
                    ],
                    "description": "Test scenario values for testing different order flows",
                    "examples": [
                      "RECEIVED_LESS_AMOUNT",
                      "EXCHANGE_SUCCESS",
                      "WITHDRAW_SUCCESS",
                      "OFFRAMP_SUCCESS"
                    ]
                  }
                },
                "required": [
                  "orderId",
                  "amount"
                ],
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Simulation accepted and dispatched",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    }
                  },
                  "required": [
                    "success"
                  ],
                  "additionalProperties": false
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "404": {
            "description": "Not found — the referenced entity does not exist, or simulation is not enabled in this environment",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api-stage.virtuabroker.com/v1/simulate/incoming-transfer/order\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"orderId\": \"string\",\n      \"amount\": 0,\n      \"scenario\": \"success\",\n      \"counterparty\": {\n        \"name\": \"string\",\n        \"iban\": \"string\",\n        \"accountNumber\": \"string\",\n        \"routingNumber\": \"string\",\n        \"clabe\": \"string\",\n        \"taxId\": \"string\",\n        \"pixKey\": \"string\",\n        \"mobileMoneyNumber\": \"string\",\n        \"email\": \"string\",\n        \"address\": \"string\"\n      },\n      \"fromAddress\": \"string\",\n      \"testScenario\": \"RECEIVED_LESS_AMOUNT\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api-stage.virtuabroker.com/v1/simulate/incoming-transfer/order\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"orderId\": \"string\",\n        \"amount\": 0,\n        \"scenario\": \"success\",\n        \"counterparty\": {\n            \"name\": \"string\",\n            \"iban\": \"string\",\n            \"accountNumber\": \"string\",\n            \"routingNumber\": \"string\",\n            \"clabe\": \"string\",\n            \"taxId\": \"string\",\n            \"pixKey\": \"string\",\n            \"mobileMoneyNumber\": \"string\",\n            \"email\": \"string\",\n            \"address\": \"string\"\n        },\n        \"fromAddress\": \"string\",\n        \"testScenario\": \"RECEIVED_LESS_AMOUNT\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api-stage.virtuabroker.com/v1/simulate/incoming-transfer/order\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"orderId\": \"string\",\n  \"amount\": 0,\n  \"scenario\": \"success\",\n  \"counterparty\": {\n    \"name\": \"string\",\n    \"iban\": \"string\",\n    \"accountNumber\": \"string\",\n    \"routingNumber\": \"string\",\n    \"clabe\": \"string\",\n    \"taxId\": \"string\",\n    \"pixKey\": \"string\",\n    \"mobileMoneyNumber\": \"string\",\n    \"email\": \"string\",\n    \"address\": \"string\"\n  },\n  \"fromAddress\": \"string\",\n  \"testScenario\": \"RECEIVED_LESS_AMOUNT\"\n}'"
          }
        ]
      }
    },
    "/v1/simulate/incoming-transfer/payin": {
      "post": {
        "summary": "Simulate an unsolicited inbound fiat payin (stage only)",
        "description": "Creates a brand-new inbound transfer that is not tied to an existing deposit or order — the shape of a real wire arriving unannounced, which then goes through matching. **Required:** `currency`, `amount` and `counterparty`. **Optional:** `reference` and `destination` (the receiving account to credit). Use it to exercise pending-payment matching and the linking flows.\n\n**Stage only** — not mounted on production.",
        "tags": [
          "Simulation"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "currency": {
                    "type": "string",
                    "minLength": 1
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "exclusiveMinimum": true
                  },
                  "reference": {
                    "type": "string",
                    "minLength": 1
                  },
                  "destination": {
                    "type": "object",
                    "properties": {
                      "iban": {
                        "type": "string",
                        "minLength": 1
                      },
                      "accountNumber": {
                        "type": "string",
                        "minLength": 1
                      },
                      "clabe": {
                        "type": "string",
                        "minLength": 1
                      },
                      "pixKey": {
                        "type": "string",
                        "minLength": 1
                      },
                      "taxId": {
                        "type": "string",
                        "minLength": 1
                      },
                      "mobileMoneyNumber": {
                        "type": "string",
                        "minLength": 1
                      }
                    },
                    "additionalProperties": false
                  },
                  "counterparty": {
                    "type": "object",
                    "properties": {
                      "name": {
                        "type": "string",
                        "minLength": 1
                      },
                      "iban": {
                        "type": "string"
                      },
                      "accountNumber": {
                        "type": "string"
                      },
                      "routingNumber": {
                        "type": "string"
                      },
                      "clabe": {
                        "type": "string"
                      },
                      "taxId": {
                        "type": "string"
                      },
                      "pixKey": {
                        "type": "string"
                      },
                      "mobileMoneyNumber": {
                        "type": "string"
                      },
                      "email": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 254,
                        "format": "email",
                        "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                        "description": "Email address"
                      },
                      "address": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "name"
                    ],
                    "additionalProperties": false
                  }
                },
                "required": [
                  "currency",
                  "amount",
                  "counterparty"
                ],
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Simulation accepted and dispatched",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    }
                  },
                  "required": [
                    "success"
                  ],
                  "additionalProperties": false
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "404": {
            "description": "Not found — the referenced entity does not exist, or simulation is not enabled in this environment",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api-stage.virtuabroker.com/v1/simulate/incoming-transfer/payin\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"currency\": \"string\",\n      \"amount\": 0,\n      \"reference\": \"string\",\n      \"destination\": {\n        \"iban\": \"string\",\n        \"accountNumber\": \"string\",\n        \"clabe\": \"string\",\n        \"pixKey\": \"string\",\n        \"taxId\": \"string\",\n        \"mobileMoneyNumber\": \"string\"\n      },\n      \"counterparty\": {\n        \"name\": \"string\",\n        \"iban\": \"string\",\n        \"accountNumber\": \"string\",\n        \"routingNumber\": \"string\",\n        \"clabe\": \"string\",\n        \"taxId\": \"string\",\n        \"pixKey\": \"string\",\n        \"mobileMoneyNumber\": \"string\",\n        \"email\": \"string\",\n        \"address\": \"string\"\n      }\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api-stage.virtuabroker.com/v1/simulate/incoming-transfer/payin\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"currency\": \"string\",\n        \"amount\": 0,\n        \"reference\": \"string\",\n        \"destination\": {\n            \"iban\": \"string\",\n            \"accountNumber\": \"string\",\n            \"clabe\": \"string\",\n            \"pixKey\": \"string\",\n            \"taxId\": \"string\",\n            \"mobileMoneyNumber\": \"string\"\n        },\n        \"counterparty\": {\n            \"name\": \"string\",\n            \"iban\": \"string\",\n            \"accountNumber\": \"string\",\n            \"routingNumber\": \"string\",\n            \"clabe\": \"string\",\n            \"taxId\": \"string\",\n            \"pixKey\": \"string\",\n            \"mobileMoneyNumber\": \"string\",\n            \"email\": \"string\",\n            \"address\": \"string\"\n        }\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api-stage.virtuabroker.com/v1/simulate/incoming-transfer/payin\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"currency\": \"string\",\n  \"amount\": 0,\n  \"reference\": \"string\",\n  \"destination\": {\n    \"iban\": \"string\",\n    \"accountNumber\": \"string\",\n    \"clabe\": \"string\",\n    \"pixKey\": \"string\",\n    \"taxId\": \"string\",\n    \"mobileMoneyNumber\": \"string\"\n  },\n  \"counterparty\": {\n    \"name\": \"string\",\n    \"iban\": \"string\",\n    \"accountNumber\": \"string\",\n    \"routingNumber\": \"string\",\n    \"clabe\": \"string\",\n    \"taxId\": \"string\",\n    \"pixKey\": \"string\",\n    \"mobileMoneyNumber\": \"string\",\n    \"email\": \"string\",\n    \"address\": \"string\"\n  }\n}'"
          }
        ]
      }
    },
    "/v1/simulate/incoming-transfer": {
      "post": {
        "summary": "Simulate a standalone crypto inbound transfer (stage only)",
        "description": "Simulates an on-chain deposit straight to a destination address, without an originating deposit or order. Crypto-only by definition. **Required:** `destinationAddress`, `currency` and `amount`.\n\n**Stage only** — not mounted on production.",
        "tags": [
          "Simulation"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "destinationAddress": {
                    "type": "string",
                    "minLength": 1
                  },
                  "network": {
                    "type": "string",
                    "enum": [
                      "MATIC",
                      "ETH",
                      "CELO",
                      "TRON",
                      "BTC",
                      "SOLANA",
                      "XRP",
                      "CARDANO",
                      "BSC",
                      "ARBITRUM",
                      "OPTIMISM",
                      "AVALANCHE",
                      "BASE"
                    ]
                  },
                  "currency": {
                    "type": "string",
                    "enum": [
                      "USDC",
                      "USDT",
                      "CUSD",
                      "ETH",
                      "BTC",
                      "MATIC",
                      "POL",
                      "SOL",
                      "DOGE",
                      "ADA",
                      "XRP",
                      "AVAX",
                      "DOT",
                      "ALGO",
                      "TRX",
                      "BNB"
                    ]
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "exclusiveMinimum": true
                  },
                  "fromAddress": {
                    "type": "string"
                  }
                },
                "required": [
                  "destinationAddress",
                  "network",
                  "currency",
                  "amount"
                ],
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Simulation accepted and dispatched",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    }
                  },
                  "required": [
                    "success"
                  ],
                  "additionalProperties": false
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "404": {
            "description": "Not found — the referenced entity does not exist, or simulation is not enabled in this environment",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api-stage.virtuabroker.com/v1/simulate/incoming-transfer\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"destinationAddress\": \"string\",\n      \"network\": \"MATIC\",\n      \"currency\": \"USDC\",\n      \"amount\": 0,\n      \"fromAddress\": \"string\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api-stage.virtuabroker.com/v1/simulate/incoming-transfer\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"destinationAddress\": \"string\",\n        \"network\": \"MATIC\",\n        \"currency\": \"USDC\",\n        \"amount\": 0,\n        \"fromAddress\": \"string\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api-stage.virtuabroker.com/v1/simulate/incoming-transfer\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"destinationAddress\": \"string\",\n  \"network\": \"MATIC\",\n  \"currency\": \"USDC\",\n  \"amount\": 0,\n  \"fromAddress\": \"string\"\n}'"
          }
        ]
      }
    },
    "/v1/mocks/simulate-compliance-transfer": {
      "post": {
        "summary": "Simulate an incoming transfer held for compliance (integration testing)",
        "description": "Creates an incoming transfer that lands **held in compliance screening**, so you can exercise your review, approval and source-of-funds handling without waiting for a real payment. The transfer is always created in **your own workspace**, taken from your credentials. **All fields optional:** `amount`, `currency`, `counterpartyName`, `counterpartyIban`, `reference`, `hoursAgo` (1–720, how far in the past to date the transfer). **Stage only** — this endpoint is not mounted on production.",
        "tags": [
          "Mocks"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "exclusiveMinimum": true
                  },
                  "currency": {
                    "type": "string",
                    "minLength": 1
                  },
                  "counterpartyName": {
                    "type": "string"
                  },
                  "counterpartyIban": {
                    "type": "string"
                  },
                  "reference": {
                    "type": "string"
                  },
                  "hoursAgo": {
                    "type": "integer",
                    "minimum": 1,
                    "maximum": 720
                  }
                },
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Compliance-held transfer created",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "transferId": {
                          "type": "string"
                        },
                        "workspaceId": {
                          "type": "string"
                        },
                        "message": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "transferId",
                        "workspaceId",
                        "message"
                      ]
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api-stage.virtuabroker.com/v1/mocks/simulate-compliance-transfer\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"amount\": 0,\n      \"currency\": \"string\",\n      \"counterpartyName\": \"string\",\n      \"counterpartyIban\": \"string\",\n      \"reference\": \"string\",\n      \"hoursAgo\": 0\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api-stage.virtuabroker.com/v1/mocks/simulate-compliance-transfer\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"amount\": 0,\n        \"currency\": \"string\",\n        \"counterpartyName\": \"string\",\n        \"counterpartyIban\": \"string\",\n        \"reference\": \"string\",\n        \"hoursAgo\": 0\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api-stage.virtuabroker.com/v1/mocks/simulate-compliance-transfer\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"amount\": 0,\n  \"currency\": \"string\",\n  \"counterpartyName\": \"string\",\n  \"counterpartyIban\": \"string\",\n  \"reference\": \"string\",\n  \"hoursAgo\": 0\n}'"
          }
        ]
      }
    },
    "/v1/mocks/mock-kyc": {
      "post": {
        "summary": "Mock approved KYC (integration testing)",
        "description": "Applies a successful test KYC for a customer so you can validate flows without a full live verification. **Required:** `email` of the individual or pending customer. **Optional:** `firstName`, `lastName`, `country` (ISO 3166-1 alpha-2). **Stage only** — this endpoint is not mounted on production.",
        "tags": [
          "Mocks"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "email": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 254,
                    "format": "email",
                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                    "description": "Email address"
                  },
                  "firstName": {
                    "type": "string"
                  },
                  "lastName": {
                    "type": "string"
                  },
                  "country": {
                    "type": "string",
                    "minLength": 2,
                    "maxLength": 2
                  }
                },
                "required": [
                  "email"
                ],
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Mock KYC applied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "entityId": {
                          "type": "string"
                        },
                        "customerId": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "entityId",
                        "customerId"
                      ]
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api-stage.virtuabroker.com/v1/mocks/mock-kyc\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"email\": \"string\",\n      \"firstName\": \"string\",\n      \"lastName\": \"string\",\n      \"country\": \"string\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api-stage.virtuabroker.com/v1/mocks/mock-kyc\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"email\": \"string\",\n        \"firstName\": \"string\",\n        \"lastName\": \"string\",\n        \"country\": \"string\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api-stage.virtuabroker.com/v1/mocks/mock-kyc\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"email\": \"string\",\n  \"firstName\": \"string\",\n  \"lastName\": \"string\",\n  \"country\": \"string\"\n}'"
          }
        ]
      }
    },
    "/v1/mocks/mock-kyb": {
      "post": {
        "summary": "Mock approved KYB for an organisation (integration testing)",
        "description": "Applies a successful test KYB for an organisation so you can validate flows without a full live verification. **Required:** `email` of the organisation representative account. **Optional:** `countryOfIncorporation` (ISO 3166-1 alpha-2). **Stage only** — this endpoint is not mounted on production.",
        "tags": [
          "Mocks"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "email": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 254,
                    "format": "email",
                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                    "description": "Email address"
                  },
                  "countryOfIncorporation": {
                    "type": "string",
                    "minLength": 2,
                    "maxLength": 2
                  }
                },
                "required": [
                  "email"
                ],
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Mock KYB applied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "entityId": {
                          "type": "string"
                        },
                        "organisationId": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "entityId",
                        "organisationId"
                      ]
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api-stage.virtuabroker.com/v1/mocks/mock-kyb\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"email\": \"string\",\n      \"countryOfIncorporation\": \"string\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api-stage.virtuabroker.com/v1/mocks/mock-kyb\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"email\": \"string\",\n        \"countryOfIncorporation\": \"string\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api-stage.virtuabroker.com/v1/mocks/mock-kyb\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"email\": \"string\",\n  \"countryOfIncorporation\": \"string\"\n}'"
          }
        ]
      }
    },
    "/v1/mocks/payout-rail/status": {
      "get": {
        "summary": "Read whether the simulated payout rail is active (development and test only)",
        "description": "Reports whether outbound bank payouts are being served by the built-in simulated payout rail instead of the real one. When `active` is false, `reason` says why: `flag_unset` (the simulation was not requested) or `environment_forbidden` (requested in an environment where it can never run). The simulated rail exists only for development and test environments; staging, pre-production and production always report `active: false`.\n\n**Development and test only** — never active on production.",
        "tags": [
          "Mocks"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "responses": {
          "200": {
            "description": "Current state of the simulated payout rail",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "active": {
                          "type": "boolean",
                          "description": "Whether outbound bank payouts are being served by the simulated payout rail"
                        },
                        "reason": {
                          "type": "string",
                          "enum": [
                            "flag_unset",
                            "environment_forbidden"
                          ],
                          "description": "Why the simulated rail is not active: `flag_unset` (not requested) or `environment_forbidden` (requested where it can never run)"
                        }
                      },
                      "required": [
                        "active"
                      ]
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api-stage.virtuabroker.com/v1/mocks/payout-rail/status\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api-stage.virtuabroker.com/v1/mocks/payout-rail/status\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api-stage.virtuabroker.com/v1/mocks/payout-rail/status\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/mocks/payout-rail/name-verification": {
      "put": {
        "summary": "Configure the beneficiary-name check outcome of the simulated payout rail (development and test only)",
        "description": "Sets the outcome the simulated payout rail returns when a payout runs its beneficiary-name check. With `accountIdentifier` (IBAN or account number) the outcome applies to that beneficiary only; without it, it becomes the default for every beneficiary that has no specific outcome. `MATCH` lets the payout proceed, `CLOSE_MATCH` and `NO_MATCH` hold it for review, and `PROVIDER_ERROR` makes the check unavailable. The same configuration always yields the same result.\n\n**Development and test only** — never active on production.",
        "tags": [
          "Mocks"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "accountIdentifier": {
                    "type": "string",
                    "minLength": 1,
                    "description": "IBAN or account number of the beneficiary the outcome applies to. Omit to set the default outcome for every beneficiary without a specific one."
                  },
                  "result": {
                    "type": "string",
                    "enum": [
                      "MATCH",
                      "CLOSE_MATCH",
                      "NO_MATCH",
                      "PROVIDER_ERROR"
                    ],
                    "description": "Outcome the simulated rail returns: `MATCH` clears the payout, `CLOSE_MATCH` and `NO_MATCH` hold it for review, `PROVIDER_ERROR` makes the check unavailable"
                  }
                },
                "required": [
                  "result"
                ],
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Outcome stored",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "scenarioId": {
                          "type": "string",
                          "description": "Identifier of the stored outcome"
                        },
                        "accountIdentifier": {
                          "type": "string",
                          "nullable": true,
                          "description": "Normalised beneficiary identifier the outcome applies to; `null` for the default outcome"
                        },
                        "result": {
                          "type": "string",
                          "enum": [
                            "MATCH",
                            "CLOSE_MATCH",
                            "NO_MATCH",
                            "PROVIDER_ERROR"
                          ],
                          "description": "Outcome now in force"
                        }
                      },
                      "required": [
                        "scenarioId",
                        "accountIdentifier",
                        "result"
                      ]
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "409": {
            "description": "Conflict — the simulated payout rail is not active in this environment, or the payout is already in a terminal status",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api-stage.virtuabroker.com/v1/mocks/payout-rail/name-verification\", {\n    method: \"PUT\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"accountIdentifier\": \"string\",\n      \"result\": \"MATCH\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.put(\n    \"https://api-stage.virtuabroker.com/v1/mocks/payout-rail/name-verification\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"accountIdentifier\": \"string\",\n        \"result\": \"MATCH\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X PUT \"https://api-stage.virtuabroker.com/v1/mocks/payout-rail/name-verification\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"accountIdentifier\": \"string\",\n  \"result\": \"MATCH\"\n}'"
          }
        ]
      }
    },
    "/v1/mocks/payout-rail/payments/{paymentId}/notice": {
      "post": {
        "summary": "Emit a payout status notice from the simulated payout rail (development and test only)",
        "description": "Moves a payout instructed on the simulated payout rail to `status` and emits the status notice through the same inbound path a real notice takes, so the order advances exactly as it would in production (`COMPLETED` pays it out, `FAILED`, `REJECTED` and `RETURNED` fail it, the review and processing statuses keep it in progress). A payout already in a terminal status cannot be moved to a different one; repeating its current status re-emits the same notice, which the platform processes once.\n\n**Development and test only** — never active on production.",
        "tags": [
          "Mocks"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 1,
              "description": "Payout identifier returned when the payout was instructed"
            },
            "required": true,
            "description": "Payout identifier returned when the payout was instructed",
            "name": "paymentId",
            "in": "path"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "status": {
                    "type": "string",
                    "enum": [
                      "CREATED",
                      "COMPLIANCE_REVIEW",
                      "MEMBER_REVIEW",
                      "PROCESSING",
                      "COMPLETED",
                      "RETURNED",
                      "REJECTED",
                      "FAILED"
                    ],
                    "description": "Payout status the notice announces. A terminal status cannot be changed afterwards; repeating the current status re-emits the same notice."
                  }
                },
                "required": [
                  "status"
                ],
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Notice emitted",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "paymentId": {
                          "type": "string",
                          "description": "Payout identifier"
                        },
                        "previousStatus": {
                          "type": "string",
                          "enum": [
                            "CREATED",
                            "COMPLIANCE_REVIEW",
                            "MEMBER_REVIEW",
                            "PROCESSING",
                            "COMPLETED",
                            "RETURNED",
                            "REJECTED",
                            "FAILED"
                          ],
                          "description": "Status before the notice"
                        },
                        "status": {
                          "type": "string",
                          "enum": [
                            "CREATED",
                            "COMPLIANCE_REVIEW",
                            "MEMBER_REVIEW",
                            "PROCESSING",
                            "COMPLETED",
                            "RETURNED",
                            "REJECTED",
                            "FAILED"
                          ],
                          "description": "Status after the notice"
                        },
                        "eventId": {
                          "type": "string",
                          "description": "Deterministic identifier of the emitted notice"
                        },
                        "webhookId": {
                          "type": "string",
                          "description": "Identifier of the stored inbound notice"
                        }
                      },
                      "required": [
                        "paymentId",
                        "previousStatus",
                        "status",
                        "eventId",
                        "webhookId"
                      ]
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "404": {
            "description": "Not found — no payout with that identifier was instructed on the simulated rail",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "409": {
            "description": "Conflict — the simulated payout rail is not active in this environment, or the payout is already in a terminal status",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api-stage.virtuabroker.com/v1/mocks/payout-rail/payments/YOUR_PAYMENTID/notice\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"status\": \"CREATED\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api-stage.virtuabroker.com/v1/mocks/payout-rail/payments/YOUR_PAYMENTID/notice\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"status\": \"CREATED\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api-stage.virtuabroker.com/v1/mocks/payout-rail/payments/YOUR_PAYMENTID/notice\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"status\": \"CREATED\"\n}'"
          }
        ]
      }
    },
    "/v1/webhook": {
      "get": {
        "summary": "Get webhook configuration",
        "description": "Returns your registered webhook callback **URL** plus **createdAt** and **updatedAt** timestamps for that configuration.\n\n**Incoming events:** your server should accept POST bodies matching the `WebhookRequest` schema (see **Webhooks** → incoming events). For identity verification, handle **`verification_status_updated`** first; treat **`kyc_completed`** as deprecated but it may still be sent for backward compatibility.",
        "tags": [
          "Webhooks"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "responses": {
          "200": {
            "description": "Successful retrieval of webhook configuration",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "url": {
                      "type": "string",
                      "nullable": true,
                      "format": "uri",
                      "description": "Webhook URL for the client"
                    },
                    "updatedAt": {
                      "type": "number",
                      "description": "Timestamp when the webhook URL was last updated"
                    },
                    "createdAt": {
                      "type": "number",
                      "description": "Timestamp when the webhook configuration was first created"
                    }
                  },
                  "required": [
                    "url",
                    "updatedAt",
                    "createdAt"
                  ],
                  "description": "Current webhook configuration for the client",
                  "example": {
                    "url": "https://api.example.com/webhooks/virtuabroker",
                    "updatedAt": 1704067200000,
                    "createdAt": 1704067200000
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/webhook\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/webhook\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/webhook\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      },
      "put": {
        "summary": "Update webhook configuration",
        "description": "Updates your webhook **callback URL** for this integration. **Integration tip:** implement a handler for the `WebhookRequest` shape; for KYC/KYB prefer **`verification_status_updated`**. Treat **`kyc_completed`** as legacy (see `WebhookEventType` and `WebhookRequest` in schemas).",
        "tags": [
          "Webhooks"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "url": {
                    "type": "string",
                    "format": "uri",
                    "description": "New webhook URL for the client",
                    "example": "https://api.example.com/webhooks/virtuabroker"
                  },
                  "apiKey": {
                    "type": "string",
                    "description": "Optional API key echoed back on every outgoing webhook so you can authenticate incoming requests on your endpoint. Omit to keep the currently stored value.",
                    "example": "whk_live_xxx"
                  }
                },
                "required": [
                  "url"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful webhook configuration update",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Whether the webhook configuration was updated successfully"
                    },
                    "url": {
                      "type": "string",
                      "format": "uri",
                      "description": "The updated webhook URL"
                    },
                    "updatedAt": {
                      "type": "number",
                      "description": "Timestamp when the webhook URL was updated"
                    }
                  },
                  "required": [
                    "success",
                    "url",
                    "updatedAt"
                  ],
                  "description": "Response after updating webhook configuration",
                  "example": {
                    "success": true,
                    "url": "https://api.example.com/webhooks/virtuabroker",
                    "updatedAt": 1704067200000
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request - Invalid URL format",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/webhook\", {\n    method: \"PUT\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"url\": \"https://api.example.com/webhooks/virtuabroker\",\n      \"apiKey\": \"whk_live_xxx\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.put(\n    \"https://api.virtuabroker.com/v1/webhook\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"url\": \"https://api.example.com/webhooks/virtuabroker\",\n        \"apiKey\": \"whk_live_xxx\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X PUT \"https://api.virtuabroker.com/v1/webhook\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"url\": \"https://api.example.com/webhooks/virtuabroker\",\n  \"apiKey\": \"whk_live_xxx\"\n}'"
          }
        ]
      }
    },
    "/v1/conversations": {
      "post": {
        "summary": "Open a conversation",
        "description": "Opens a b2c support conversation for one of your end-users (identified by `endUserEmail`) with their first message. An end-user account is provisioned automatically on first use.",
        "tags": [
          "Conversations"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "endUserEmail": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 254,
                    "format": "email",
                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                    "description": "Email of the end-user this conversation belongs to. An account is provisioned on first use if none exists."
                  },
                  "text": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 5000,
                    "description": "The opening message. See `authoredBy` for who it is from."
                  },
                  "authoredBy": {
                    "type": "string",
                    "enum": [
                      "end_user",
                      "operator"
                    ],
                    "default": "end_user",
                    "description": "Who writes the opening message. `end_user` (default) is the customer opening a support thread — the thread then waits on you. `operator` is you reaching out first: the thread waits on the customer, the unread sits on their side, and no `conversation_created` webhook is emitted (you already know — you sent it)."
                  },
                  "subject": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200,
                    "description": "Thread subject"
                  },
                  "topic": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 200,
                    "description": "Free-text triage topic"
                  },
                  "priority": {
                    "type": "string",
                    "enum": [
                      "low",
                      "normal",
                      "high"
                    ],
                    "description": "Triage priority"
                  },
                  "relatedOrderId": {
                    "type": "string",
                    "minLength": 1,
                    "description": "An order id to associate with the thread"
                  }
                },
                "required": [
                  "endUserEmail",
                  "text"
                ],
                "additionalProperties": false,
                "example": {
                  "endUserEmail": "jane@example.com",
                  "text": "My payout has not arrived yet",
                  "subject": "Payout delay",
                  "priority": "normal"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Conversation opened",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "conversation": {
                          "type": "object",
                          "properties": {
                            "conversationId": {
                              "type": "string",
                              "description": "Conversation id"
                            },
                            "status": {
                              "type": "string",
                              "enum": [
                                "open",
                                "pending_admin",
                                "pending_account",
                                "closed"
                              ],
                              "description": "Thread status"
                            },
                            "subject": {
                              "type": "string",
                              "description": "Thread subject"
                            },
                            "topic": {
                              "type": "string",
                              "description": "Triage topic"
                            },
                            "priority": {
                              "type": "string",
                              "enum": [
                                "low",
                                "normal",
                                "high"
                              ],
                              "description": "Triage priority"
                            },
                            "lastMessagePreview": {
                              "type": "string",
                              "description": "PII-safe preview of the last end-user-visible message"
                            },
                            "lastMessageAt": {
                              "type": "number",
                              "description": "Epoch-ms of the last message"
                            },
                            "lastMessageBy": {
                              "type": "string",
                              "enum": [
                                "account",
                                "support",
                                "system"
                              ],
                              "description": "Who sent the last message"
                            },
                            "unreadCount": {
                              "type": "integer",
                              "minimum": 0,
                              "description": "Messages from the end-user awaiting your response"
                            },
                            "relatedOrderIds": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Order ids associated with the thread"
                            },
                            "createdAt": {
                              "type": "number",
                              "description": "Epoch-ms created"
                            },
                            "updatedAt": {
                              "type": "number",
                              "description": "Epoch-ms last updated"
                            }
                          },
                          "required": [
                            "conversationId",
                            "status",
                            "lastMessagePreview",
                            "lastMessageAt",
                            "lastMessageBy",
                            "unreadCount",
                            "relatedOrderIds",
                            "createdAt",
                            "updatedAt"
                          ],
                          "example": {
                            "conversationId": "2f1c0e9a-9b3e-4d7a-8c2b-1a2b3c4d5e6f",
                            "status": "pending_account",
                            "subject": "Payout delay",
                            "priority": "normal",
                            "lastMessagePreview": "We are looking into your payout now.",
                            "lastMessageAt": 1751200000000,
                            "lastMessageBy": "support",
                            "unreadCount": 0,
                            "relatedOrderIds": [],
                            "createdAt": 1751190000000,
                            "updatedAt": 1751200000000
                          }
                        },
                        "message": {
                          "type": "object",
                          "properties": {
                            "messageId": {
                              "type": "string",
                              "description": "Message id"
                            },
                            "conversationId": {
                              "type": "string",
                              "description": "Conversation id"
                            },
                            "sender": {
                              "type": "string",
                              "enum": [
                                "account",
                                "support",
                                "system"
                              ],
                              "description": "Who sent the message: `account` = the end-user, `support` = your support agent or VirtuaBroker, `system` = automated."
                            },
                            "text": {
                              "type": "string",
                              "description": "Message body"
                            },
                            "internal": {
                              "type": "boolean",
                              "description": "True for an internal support note. You MUST NOT display an internal message to the end-user — request audience=end_user for the end-user-facing pipe."
                            },
                            "relatedOrderId": {
                              "type": "string",
                              "description": "Associated order id"
                            },
                            "attachments": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "Attachment MIME/type label"
                                  },
                                  "url": {
                                    "type": "string",
                                    "format": "uri",
                                    "description": "HTTPS URL of the attachment"
                                  },
                                  "name": {
                                    "type": "string",
                                    "description": "Original file name"
                                  },
                                  "size": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Size in bytes"
                                  }
                                },
                                "required": [
                                  "type",
                                  "url"
                                ]
                              },
                              "description": "Attachments"
                            },
                            "createdAt": {
                              "type": "number",
                              "description": "Epoch-ms created"
                            },
                            "editedAt": {
                              "type": "number",
                              "description": "Epoch-ms last edited"
                            }
                          },
                          "required": [
                            "messageId",
                            "conversationId",
                            "sender",
                            "text",
                            "internal",
                            "createdAt"
                          ],
                          "example": {
                            "messageId": "9a8b7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d",
                            "conversationId": "2f1c0e9a-9b3e-4d7a-8c2b-1a2b3c4d5e6f",
                            "sender": "account",
                            "text": "My payout has not arrived yet",
                            "internal": false,
                            "createdAt": 1751190000000
                          }
                        }
                      },
                      "required": [
                        "conversation",
                        "message"
                      ]
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/conversations\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"endUserEmail\": \"jane@example.com\",\n      \"text\": \"My payout has not arrived yet\",\n      \"subject\": \"Payout delay\",\n      \"priority\": \"normal\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api.virtuabroker.com/v1/conversations\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"endUserEmail\": \"jane@example.com\",\n        \"text\": \"My payout has not arrived yet\",\n        \"subject\": \"Payout delay\",\n        \"priority\": \"normal\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api.virtuabroker.com/v1/conversations\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"endUserEmail\": \"jane@example.com\",\n  \"text\": \"My payout has not arrived yet\",\n  \"subject\": \"Payout delay\",\n  \"priority\": \"normal\"\n}'"
          }
        ]
      },
      "get": {
        "summary": "List end-user conversations",
        "description": "Returns the b2c conversations belonging to one of your end-users (by `endUserEmail`).",
        "tags": [
          "Conversations"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 254,
              "format": "email",
              "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
              "description": "Email of the end-user whose conversations to list"
            },
            "required": true,
            "description": "Email of the end-user whose conversations to list",
            "name": "endUserEmail",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful retrieval of conversations",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "conversations": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "conversationId": {
                                "type": "string",
                                "description": "Conversation id"
                              },
                              "status": {
                                "type": "string",
                                "enum": [
                                  "open",
                                  "pending_admin",
                                  "pending_account",
                                  "closed"
                                ],
                                "description": "Thread status"
                              },
                              "subject": {
                                "type": "string",
                                "description": "Thread subject"
                              },
                              "topic": {
                                "type": "string",
                                "description": "Triage topic"
                              },
                              "priority": {
                                "type": "string",
                                "enum": [
                                  "low",
                                  "normal",
                                  "high"
                                ],
                                "description": "Triage priority"
                              },
                              "lastMessagePreview": {
                                "type": "string",
                                "description": "PII-safe preview of the last end-user-visible message"
                              },
                              "lastMessageAt": {
                                "type": "number",
                                "description": "Epoch-ms of the last message"
                              },
                              "lastMessageBy": {
                                "type": "string",
                                "enum": [
                                  "account",
                                  "support",
                                  "system"
                                ],
                                "description": "Who sent the last message"
                              },
                              "unreadCount": {
                                "type": "integer",
                                "minimum": 0,
                                "description": "Messages from the end-user awaiting your response"
                              },
                              "relatedOrderIds": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Order ids associated with the thread"
                              },
                              "createdAt": {
                                "type": "number",
                                "description": "Epoch-ms created"
                              },
                              "updatedAt": {
                                "type": "number",
                                "description": "Epoch-ms last updated"
                              }
                            },
                            "required": [
                              "conversationId",
                              "status",
                              "lastMessagePreview",
                              "lastMessageAt",
                              "lastMessageBy",
                              "unreadCount",
                              "relatedOrderIds",
                              "createdAt",
                              "updatedAt"
                            ],
                            "example": {
                              "conversationId": "2f1c0e9a-9b3e-4d7a-8c2b-1a2b3c4d5e6f",
                              "status": "pending_account",
                              "subject": "Payout delay",
                              "priority": "normal",
                              "lastMessagePreview": "We are looking into your payout now.",
                              "lastMessageAt": 1751200000000,
                              "lastMessageBy": "support",
                              "unreadCount": 0,
                              "relatedOrderIds": [],
                              "createdAt": 1751190000000,
                              "updatedAt": 1751200000000
                            }
                          }
                        }
                      },
                      "required": [
                        "conversations"
                      ]
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/conversations\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/conversations\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/conversations\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/conversations/{conversationId}": {
      "get": {
        "summary": "Get a conversation",
        "description": "Returns one b2c conversation belonging to one of your end-users. `endUserEmail` is required: a conversation is addressed by end-user **and** id, so an id on its own never resolves a thread.",
        "tags": [
          "Conversations"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 1,
              "description": "Conversation id"
            },
            "required": true,
            "description": "Conversation id",
            "name": "conversationId",
            "in": "path"
          },
          {
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 254,
              "format": "email",
              "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
              "description": "Email of the end-user this conversation belongs to"
            },
            "required": true,
            "description": "Email of the end-user this conversation belongs to",
            "name": "endUserEmail",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful retrieval of the conversation",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "conversation": {
                          "type": "object",
                          "properties": {
                            "conversationId": {
                              "type": "string",
                              "description": "Conversation id"
                            },
                            "status": {
                              "type": "string",
                              "enum": [
                                "open",
                                "pending_admin",
                                "pending_account",
                                "closed"
                              ],
                              "description": "Thread status"
                            },
                            "subject": {
                              "type": "string",
                              "description": "Thread subject"
                            },
                            "topic": {
                              "type": "string",
                              "description": "Triage topic"
                            },
                            "priority": {
                              "type": "string",
                              "enum": [
                                "low",
                                "normal",
                                "high"
                              ],
                              "description": "Triage priority"
                            },
                            "lastMessagePreview": {
                              "type": "string",
                              "description": "PII-safe preview of the last end-user-visible message"
                            },
                            "lastMessageAt": {
                              "type": "number",
                              "description": "Epoch-ms of the last message"
                            },
                            "lastMessageBy": {
                              "type": "string",
                              "enum": [
                                "account",
                                "support",
                                "system"
                              ],
                              "description": "Who sent the last message"
                            },
                            "unreadCount": {
                              "type": "integer",
                              "minimum": 0,
                              "description": "Messages from the end-user awaiting your response"
                            },
                            "relatedOrderIds": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Order ids associated with the thread"
                            },
                            "createdAt": {
                              "type": "number",
                              "description": "Epoch-ms created"
                            },
                            "updatedAt": {
                              "type": "number",
                              "description": "Epoch-ms last updated"
                            }
                          },
                          "required": [
                            "conversationId",
                            "status",
                            "lastMessagePreview",
                            "lastMessageAt",
                            "lastMessageBy",
                            "unreadCount",
                            "relatedOrderIds",
                            "createdAt",
                            "updatedAt"
                          ],
                          "example": {
                            "conversationId": "2f1c0e9a-9b3e-4d7a-8c2b-1a2b3c4d5e6f",
                            "status": "pending_account",
                            "subject": "Payout delay",
                            "priority": "normal",
                            "lastMessagePreview": "We are looking into your payout now.",
                            "lastMessageAt": 1751200000000,
                            "lastMessageBy": "support",
                            "unreadCount": 0,
                            "relatedOrderIds": [],
                            "createdAt": 1751190000000,
                            "updatedAt": 1751200000000
                          }
                        }
                      },
                      "required": [
                        "conversation"
                      ]
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Conversation not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/conversations/YOUR_CONVERSATIONID\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/conversations/YOUR_CONVERSATIONID\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/conversations/YOUR_CONVERSATIONID\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/conversations/{conversationId}/messages": {
      "get": {
        "summary": "List conversation messages",
        "description": "Returns messages for a conversation (oldest first), paginated with `limit` and the `before` epoch-ms cursor. Each message carries an `internal` flag — an internal support note that you **MUST NOT** show the end-user. For the end-user-facing screen request `audience=end_user` (returns ONLY client-visible messages); the default `audience=all` returns the full operator view.",
        "tags": [
          "Conversations"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 1,
              "description": "Conversation id"
            },
            "required": true,
            "description": "Conversation id",
            "name": "conversationId",
            "in": "path"
          },
          {
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 254,
              "format": "email",
              "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
              "description": "Email of the end-user this conversation belongs to"
            },
            "required": true,
            "description": "Email of the end-user this conversation belongs to",
            "name": "endUserEmail",
            "in": "query"
          },
          {
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100,
              "description": "Max messages to return (default 30)"
            },
            "required": false,
            "description": "Max messages to return (default 30)",
            "name": "limit",
            "in": "query"
          },
          {
            "schema": {
              "type": "integer",
              "nullable": true,
              "description": "Return messages created strictly before this epoch-ms cursor"
            },
            "required": false,
            "description": "Return messages created strictly before this epoch-ms cursor",
            "name": "before",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "enum": [
                "all",
                "end_user"
              ],
              "description": "`end_user` = only messages safe to show the end-user; `all` (default) = full operator view with the `internal` marker."
            },
            "required": false,
            "description": "`end_user` = only messages safe to show the end-user; `all` (default) = full operator view with the `internal` marker.",
            "name": "audience",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful retrieval of messages",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "messages": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "messageId": {
                                "type": "string",
                                "description": "Message id"
                              },
                              "conversationId": {
                                "type": "string",
                                "description": "Conversation id"
                              },
                              "sender": {
                                "type": "string",
                                "enum": [
                                  "account",
                                  "support",
                                  "system"
                                ],
                                "description": "Who sent the message: `account` = the end-user, `support` = your support agent or VirtuaBroker, `system` = automated."
                              },
                              "text": {
                                "type": "string",
                                "description": "Message body"
                              },
                              "internal": {
                                "type": "boolean",
                                "description": "True for an internal support note. You MUST NOT display an internal message to the end-user — request audience=end_user for the end-user-facing pipe."
                              },
                              "relatedOrderId": {
                                "type": "string",
                                "description": "Associated order id"
                              },
                              "attachments": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "minLength": 1,
                                      "description": "Attachment MIME/type label"
                                    },
                                    "url": {
                                      "type": "string",
                                      "format": "uri",
                                      "description": "HTTPS URL of the attachment"
                                    },
                                    "name": {
                                      "type": "string",
                                      "description": "Original file name"
                                    },
                                    "size": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Size in bytes"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "url"
                                  ]
                                },
                                "description": "Attachments"
                              },
                              "createdAt": {
                                "type": "number",
                                "description": "Epoch-ms created"
                              },
                              "editedAt": {
                                "type": "number",
                                "description": "Epoch-ms last edited"
                              }
                            },
                            "required": [
                              "messageId",
                              "conversationId",
                              "sender",
                              "text",
                              "internal",
                              "createdAt"
                            ],
                            "example": {
                              "messageId": "9a8b7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d",
                              "conversationId": "2f1c0e9a-9b3e-4d7a-8c2b-1a2b3c4d5e6f",
                              "sender": "account",
                              "text": "My payout has not arrived yet",
                              "internal": false,
                              "createdAt": 1751190000000
                            }
                          }
                        }
                      },
                      "required": [
                        "messages"
                      ]
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Conversation not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/conversations/YOUR_CONVERSATIONID/messages\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/conversations/YOUR_CONVERSATIONID/messages\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/conversations/YOUR_CONVERSATIONID/messages\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      },
      "post": {
        "summary": "Send a conversation message",
        "description": "Posts a support reply to a conversation. Set `internal: true` to add a private support note the end-user never sees.",
        "tags": [
          "Conversations"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 1,
              "description": "Conversation id"
            },
            "required": true,
            "description": "Conversation id",
            "name": "conversationId",
            "in": "path"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "endUserEmail": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 254,
                    "format": "email",
                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                    "description": "Email of the end-user this conversation belongs to"
                  },
                  "text": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 5000,
                    "description": "Message body"
                  },
                  "relatedOrderId": {
                    "type": "string",
                    "minLength": 1,
                    "description": "An order id to associate with the message"
                  },
                  "attachments": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "type": {
                          "type": "string",
                          "minLength": 1,
                          "description": "Attachment MIME/type label"
                        },
                        "url": {
                          "type": "string",
                          "format": "uri",
                          "description": "HTTPS URL of the attachment"
                        },
                        "name": {
                          "type": "string",
                          "description": "Original file name"
                        },
                        "size": {
                          "type": "number",
                          "minimum": 0,
                          "description": "Size in bytes"
                        }
                      },
                      "required": [
                        "type",
                        "url"
                      ]
                    },
                    "maxItems": 10,
                    "description": "Up to 10 attachments"
                  },
                  "internal": {
                    "type": "boolean",
                    "description": "When true, the message is an internal support note hidden from the end-user."
                  }
                },
                "required": [
                  "endUserEmail",
                  "text"
                ],
                "additionalProperties": false,
                "example": {
                  "endUserEmail": "jane@example.com",
                  "text": "We are looking into your payout now."
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Message sent",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "conversation": {
                          "type": "object",
                          "properties": {
                            "conversationId": {
                              "type": "string",
                              "description": "Conversation id"
                            },
                            "status": {
                              "type": "string",
                              "enum": [
                                "open",
                                "pending_admin",
                                "pending_account",
                                "closed"
                              ],
                              "description": "Thread status"
                            },
                            "subject": {
                              "type": "string",
                              "description": "Thread subject"
                            },
                            "topic": {
                              "type": "string",
                              "description": "Triage topic"
                            },
                            "priority": {
                              "type": "string",
                              "enum": [
                                "low",
                                "normal",
                                "high"
                              ],
                              "description": "Triage priority"
                            },
                            "lastMessagePreview": {
                              "type": "string",
                              "description": "PII-safe preview of the last end-user-visible message"
                            },
                            "lastMessageAt": {
                              "type": "number",
                              "description": "Epoch-ms of the last message"
                            },
                            "lastMessageBy": {
                              "type": "string",
                              "enum": [
                                "account",
                                "support",
                                "system"
                              ],
                              "description": "Who sent the last message"
                            },
                            "unreadCount": {
                              "type": "integer",
                              "minimum": 0,
                              "description": "Messages from the end-user awaiting your response"
                            },
                            "relatedOrderIds": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Order ids associated with the thread"
                            },
                            "createdAt": {
                              "type": "number",
                              "description": "Epoch-ms created"
                            },
                            "updatedAt": {
                              "type": "number",
                              "description": "Epoch-ms last updated"
                            }
                          },
                          "required": [
                            "conversationId",
                            "status",
                            "lastMessagePreview",
                            "lastMessageAt",
                            "lastMessageBy",
                            "unreadCount",
                            "relatedOrderIds",
                            "createdAt",
                            "updatedAt"
                          ],
                          "example": {
                            "conversationId": "2f1c0e9a-9b3e-4d7a-8c2b-1a2b3c4d5e6f",
                            "status": "pending_account",
                            "subject": "Payout delay",
                            "priority": "normal",
                            "lastMessagePreview": "We are looking into your payout now.",
                            "lastMessageAt": 1751200000000,
                            "lastMessageBy": "support",
                            "unreadCount": 0,
                            "relatedOrderIds": [],
                            "createdAt": 1751190000000,
                            "updatedAt": 1751200000000
                          }
                        },
                        "message": {
                          "type": "object",
                          "properties": {
                            "messageId": {
                              "type": "string",
                              "description": "Message id"
                            },
                            "conversationId": {
                              "type": "string",
                              "description": "Conversation id"
                            },
                            "sender": {
                              "type": "string",
                              "enum": [
                                "account",
                                "support",
                                "system"
                              ],
                              "description": "Who sent the message: `account` = the end-user, `support` = your support agent or VirtuaBroker, `system` = automated."
                            },
                            "text": {
                              "type": "string",
                              "description": "Message body"
                            },
                            "internal": {
                              "type": "boolean",
                              "description": "True for an internal support note. You MUST NOT display an internal message to the end-user — request audience=end_user for the end-user-facing pipe."
                            },
                            "relatedOrderId": {
                              "type": "string",
                              "description": "Associated order id"
                            },
                            "attachments": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "minLength": 1,
                                    "description": "Attachment MIME/type label"
                                  },
                                  "url": {
                                    "type": "string",
                                    "format": "uri",
                                    "description": "HTTPS URL of the attachment"
                                  },
                                  "name": {
                                    "type": "string",
                                    "description": "Original file name"
                                  },
                                  "size": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "Size in bytes"
                                  }
                                },
                                "required": [
                                  "type",
                                  "url"
                                ]
                              },
                              "description": "Attachments"
                            },
                            "createdAt": {
                              "type": "number",
                              "description": "Epoch-ms created"
                            },
                            "editedAt": {
                              "type": "number",
                              "description": "Epoch-ms last edited"
                            }
                          },
                          "required": [
                            "messageId",
                            "conversationId",
                            "sender",
                            "text",
                            "internal",
                            "createdAt"
                          ],
                          "example": {
                            "messageId": "9a8b7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d",
                            "conversationId": "2f1c0e9a-9b3e-4d7a-8c2b-1a2b3c4d5e6f",
                            "sender": "account",
                            "text": "My payout has not arrived yet",
                            "internal": false,
                            "createdAt": 1751190000000
                          }
                        }
                      },
                      "required": [
                        "conversation",
                        "message"
                      ]
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "404": {
            "description": "Conversation not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/conversations/YOUR_CONVERSATIONID/messages\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"endUserEmail\": \"jane@example.com\",\n      \"text\": \"We are looking into your payout now.\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api.virtuabroker.com/v1/conversations/YOUR_CONVERSATIONID/messages\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"endUserEmail\": \"jane@example.com\",\n        \"text\": \"We are looking into your payout now.\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api.virtuabroker.com/v1/conversations/YOUR_CONVERSATIONID/messages\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"endUserEmail\": \"jane@example.com\",\n  \"text\": \"We are looking into your payout now.\"\n}'"
          }
        ]
      }
    },
    "/v1/conversations/{conversationId}/stream": {
      "get": {
        "summary": "Stream conversation messages (SSE)",
        "description": "Server-Sent Events stream of new messages for a conversation. Send `endUserEmail` as a query param; resume after a disconnect with the `Last-Event-ID` header (the last message epoch-ms). Each `message` event carries a conversation message with an `internal` flag — never show an internal note to the end-user. Use `audience=end_user` to stream ONLY client-visible messages for the end-user pipe; the default `audience=all` streams the full operator view.",
        "tags": [
          "Conversations"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 1,
              "description": "Conversation id"
            },
            "required": true,
            "description": "Conversation id",
            "name": "conversationId",
            "in": "path"
          },
          {
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 254,
              "format": "email",
              "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
              "description": "Email of the end-user this conversation belongs to"
            },
            "required": true,
            "description": "Email of the end-user this conversation belongs to",
            "name": "endUserEmail",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "enum": [
                "all",
                "end_user"
              ],
              "description": "`end_user` = only messages safe to show the end-user; `all` (default) = full operator view with the `internal` marker."
            },
            "required": false,
            "description": "`end_user` = only messages safe to show the end-user; `all` (default) = full operator view with the `internal` marker.",
            "name": "audience",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "description": "Resume cursor — the epoch-ms id of the last message the client received. Omit to start from now."
            },
            "required": false,
            "description": "Resume cursor — the epoch-ms id of the last message the client received. Omit to start from now.",
            "name": "Last-Event-ID",
            "in": "header"
          }
        ],
        "responses": {
          "200": {
            "description": "text/event-stream of conversation message events"
          },
          "404": {
            "description": "Conversation not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/conversations/YOUR_CONVERSATIONID/stream\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/conversations/YOUR_CONVERSATIONID/stream\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/conversations/YOUR_CONVERSATIONID/stream\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/conversations/widget-session": {
      "post": {
        "summary": "Mint a widget session",
        "description": "Mints a short-lived, browser-safe credential scoped to one end-user. Hand ONLY the returned `session` to your embedded chat widget — it carries no secret. The widget uses it to read, send, and stream that end-user’s messages.",
        "tags": [
          "Conversations"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "endUserEmail": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 254,
                    "format": "email",
                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                    "description": "Email of the end-user the widget session is scoped to. An account is provisioned on first use."
                  }
                },
                "required": [
                  "endUserEmail"
                ],
                "additionalProperties": false,
                "example": {
                  "endUserEmail": "jane@example.com"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Session minted",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "session": {
                          "type": "string",
                          "description": "Opaque, short-lived credential scoped to one end-user. Hand ONLY this to the browser widget; it carries no secret. Pass it back as the `session` query param on widget calls."
                        },
                        "expiresAt": {
                          "type": "number",
                          "description": "Session expiry (epoch ms)"
                        }
                      },
                      "required": [
                        "session",
                        "expiresAt"
                      ],
                      "example": {
                        "session": "eyJraW5kIjoiY29udmVyc2F0aW9uX3dpZGdldCIs....4b1c…",
                        "expiresAt": 1751207200000
                      }
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/conversations/widget-session\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"endUserEmail\": \"jane@example.com\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api.virtuabroker.com/v1/conversations/widget-session\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"endUserEmail\": \"jane@example.com\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api.virtuabroker.com/v1/conversations/widget-session\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"endUserEmail\": \"jane@example.com\"\n}'"
          }
        ]
      }
    },
    "/v1/pending-payments": {
      "get": {
        "summary": "List pending payments",
        "description": "Returns incoming transfers that have not yet been linked to an order or deposit. Use filters to locate specific transfers by counterparty name, reference, IBAN, or amount.",
        "tags": [
          "Pending Payments"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "description": "Optional currency code to filter the items",
              "example": "EUR"
            },
            "required": false,
            "description": "Optional currency code to filter the items",
            "name": "currency",
            "in": "query"
          },
          {
            "schema": {
              "type": "number",
              "minimum": 0
            },
            "required": false,
            "name": "minAmount",
            "in": "query"
          },
          {
            "schema": {
              "type": "number",
              "minimum": 0
            },
            "required": false,
            "name": "maxAmount",
            "in": "query"
          },
          {
            "schema": {
              "type": "integer",
              "minimum": 0
            },
            "required": false,
            "name": "from",
            "in": "query"
          },
          {
            "schema": {
              "type": "integer",
              "minimum": 0
            },
            "required": false,
            "name": "to",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
              "description": "Email of the user making the request. For a business payer this matches operations under any of its identities — the representative email and the organisation account — so listings stay complete across both.",
              "example": "user@example.com"
            },
            "required": false,
            "description": "Email of the user making the request. For a business payer this matches operations under any of its identities — the representative email and the organisation account — so listings stay complete across both.",
            "name": "userEmail",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "description": "General search (e.g. email or text). When provided, backend may use it for userEmail or text search."
            },
            "required": false,
            "description": "General search (e.g. email or text). When provided, backend may use it for userEmail or text search.",
            "name": "search",
            "in": "query"
          },
          {
            "schema": {
              "type": "number",
              "minimum": 0
            },
            "required": false,
            "name": "limit",
            "in": "query"
          },
          {
            "schema": {
              "type": "number",
              "minimum": 0
            },
            "required": false,
            "name": "page",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "description": "Filter by counterparty name (case-insensitive partial match)",
              "example": "John Doe"
            },
            "required": false,
            "description": "Filter by counterparty name (case-insensitive partial match)",
            "name": "name",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "description": "Filter by reference or ID (partial match)",
              "example": "REF123"
            },
            "required": false,
            "description": "Filter by reference or ID (partial match)",
            "name": "reference",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "description": "Filter by IBAN (case-insensitive partial match)",
              "example": "ES9121000418450200051332"
            },
            "required": false,
            "description": "Filter by IBAN (case-insensitive partial match)",
            "name": "iban",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "description": "Filter by IBAN country code (e.g., ES, DE)",
              "example": "ES"
            },
            "required": false,
            "description": "Filter by IBAN country code (e.g., ES, DE)",
            "name": "ibanCountry",
            "in": "query"
          },
          {
            "schema": {
              "type": "number",
              "minimum": 0,
              "exclusiveMinimum": true,
              "description": "Filter by exact amount",
              "example": 1000
            },
            "required": false,
            "description": "Filter by exact amount",
            "name": "amount",
            "in": "query"
          },
          {
            "schema": {
              "anyOf": [
                {
                  "type": "boolean"
                },
                {
                  "type": "string"
                }
              ],
              "description": "If true, only unlinked transfers with readyToLinkAt set (queue ready for linking)."
            },
            "required": false,
            "description": "If true, only unlinked transfers with readyToLinkAt set (queue ready for linking).",
            "name": "readyToLinkOnly",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "enum": [
                "compliance",
                "source_of_funds",
                "prelink",
                "screening",
                "monitoring",
                "normal",
                ""
              ],
              "description": "Filter by transfer type: screening (identity hold), monitoring (fiat/crypto), source_of_funds, normal (no compliance hold), prelink, or compliance (screening+monitoring combined)."
            },
            "required": false,
            "description": "Filter by transfer type: screening (identity hold), monitoring (fiat/crypto), source_of_funds, normal (no compliance hold), prelink, or compliance (screening+monitoring combined).",
            "name": "typeFilter",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "description": "Optional account id (email) within the calling workspace. When provided, the proposedByMe / sofUploadedByMe / screening.submittedByMe flags are computed relative to that account. Ignored on the authenticated app API, which uses the signed-in account.",
              "example": "ops@example.com"
            },
            "required": false,
            "description": "Optional account id (email) within the calling workspace. When provided, the proposedByMe / sofUploadedByMe / screening.submittedByMe flags are computed relative to that account. Ignored on the authenticated app API, which uses the signed-in account.",
            "name": "accountId",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful retrieval of pending payments",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "transfers": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string",
                                "description": "Transfer identifier — use this to call /link, /create-deposit, or /create-order"
                              },
                              "amount": {
                                "type": "number",
                                "description": "Amount received"
                              },
                              "currency": {
                                "type": "string",
                                "description": "Currency (ISO 4217, e.g. EUR)"
                              },
                              "date": {
                                "type": "string",
                                "description": "Date the payment was received (ISO 8601)"
                              },
                              "timestamp": {
                                "type": "number",
                                "description": "Transfer date as epoch milliseconds — use this for sorting/display; the `date` string is locale-formatted and must not be re-parsed"
                              },
                              "reference": {
                                "type": "string",
                                "nullable": true,
                                "description": "Payment reference text provided by the sender"
                              },
                              "counterparty": {
                                "type": "object",
                                "properties": {
                                  "name": {
                                    "type": "string",
                                    "description": "Sender name"
                                  },
                                  "iban": {
                                    "type": "string",
                                    "description": "Sender IBAN"
                                  }
                                },
                                "description": "Basic sender information"
                              },
                              "complianceHoldReason": {
                                "type": "string",
                                "nullable": true,
                                "enum": [
                                  "source_of_funds",
                                  "screening",
                                  "fiat_monitoring",
                                  "crypto_monitoring"
                                ]
                              },
                              "complianceDocuments": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "path": {
                                      "type": "string"
                                    },
                                    "fileName": {
                                      "type": "string"
                                    },
                                    "uploadedBy": {
                                      "type": "string"
                                    },
                                    "uploadedByKind": {
                                      "type": "string",
                                      "enum": [
                                        "operator",
                                        "workspace"
                                      ]
                                    },
                                    "uploadedAt": {
                                      "type": "number"
                                    },
                                    "comment": {
                                      "type": "string"
                                    }
                                  },
                                  "required": [
                                    "path"
                                  ]
                                }
                              },
                              "paymentMethod": {
                                "type": "object",
                                "nullable": true,
                                "properties": {
                                  "amountLimit": {
                                    "type": "number"
                                  },
                                  "amountLimitCurrency": {
                                    "type": "string"
                                  },
                                  "amountProcessed": {
                                    "type": "number"
                                  },
                                  "isBlocked": {
                                    "type": "boolean"
                                  }
                                }
                              },
                              "attemptedLinks": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "entityId": {
                                      "type": "string"
                                    },
                                    "entityType": {
                                      "type": "string",
                                      "enum": [
                                        "order",
                                        "deposit"
                                      ]
                                    },
                                    "attemptedAt": {
                                      "type": "number"
                                    },
                                    "reason": {
                                      "type": "string"
                                    },
                                    "errorId": {
                                      "type": "string"
                                    }
                                  },
                                  "required": [
                                    "entityId",
                                    "entityType",
                                    "attemptedAt",
                                    "reason"
                                  ]
                                }
                              },
                              "reviewReason": {
                                "type": "string",
                                "nullable": true
                              },
                              "senderEnrichmentSubmitted": {
                                "type": "boolean"
                              },
                              "refundStatus": {
                                "type": "string",
                                "enum": [
                                  "pending_approval",
                                  "returning",
                                  "returned",
                                  "failed"
                                ],
                                "description": "Refund state of this payment. Only present while a refund is in play — a payment with no refund in progress carries no such field. `pending_approval`: a refund has been requested and the amount is held; nothing has been sent to the payer. `returning`: the return has been submitted and is awaiting confirmation — intent, not proof, so do not treat the payer as repaid. `returned`: confirmed, the payer has the money back; final. `failed`: the return was rejected and the payment stays held; final. Only `returned` proves the money reached the payer. While this field is present the payment cannot be linked to an order or a deposit."
                              },
                              "preLinked": {
                                "type": "object",
                                "nullable": true,
                                "properties": {
                                  "type": {
                                    "type": "string",
                                    "enum": [
                                      "order",
                                      "deposit"
                                    ]
                                  },
                                  "id": {
                                    "type": "string"
                                  },
                                  "confidence": {
                                    "type": "number"
                                  },
                                  "note": {
                                    "type": "string"
                                  },
                                  "timestamp": {
                                    "type": "number"
                                  },
                                  "reasonCode": {
                                    "type": "string",
                                    "enum": [
                                      "joint_account",
                                      "wrong_name_on_payment",
                                      "wrong_name_on_order_or_deposit"
                                    ]
                                  },
                                  "isProposal": {
                                    "type": "boolean"
                                  },
                                  "proposedBy": {
                                    "type": "string"
                                  },
                                  "proposedByMe": {
                                    "type": "boolean"
                                  },
                                  "hasDocuments": {
                                    "type": "boolean"
                                  }
                                },
                                "required": [
                                  "type",
                                  "id",
                                  "confidence",
                                  "isProposal",
                                  "proposedByMe",
                                  "hasDocuments"
                                ]
                              },
                              "sofUploadedByMe": {
                                "type": "boolean"
                              },
                              "sofLastUploadedAt": {
                                "type": "number"
                              },
                              "screening": {
                                "type": "object",
                                "nullable": true,
                                "properties": {
                                  "submitted": {
                                    "type": "boolean"
                                  },
                                  "submittedBy": {
                                    "type": "string"
                                  },
                                  "submittedByMe": {
                                    "type": "boolean"
                                  },
                                  "submittedAt": {
                                    "type": "number"
                                  }
                                },
                                "required": [
                                  "submitted",
                                  "submittedByMe"
                                ]
                              }
                            },
                            "required": [
                              "id",
                              "amount",
                              "currency"
                            ]
                          }
                        },
                        "total": {
                          "type": "number",
                          "description": "Total count of pending transfers"
                        },
                        "page": {
                          "type": "number"
                        },
                        "limit": {
                          "type": "number"
                        }
                      },
                      "required": [
                        "transfers"
                      ]
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/pending-payments\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/pending-payments\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/pending-payments\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/pending-payments/{transferId}": {
      "get": {
        "summary": "Get pending payment details",
        "description": "Returns full details for a single pending transfer including counterparty information and any pre-linking suggestion.",
        "tags": [
          "Pending Payments"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string"
            },
            "required": true,
            "name": "transferId",
            "in": "path"
          },
          {
            "schema": {
              "type": "string",
              "description": "Optional account id (email) within the calling workspace; the proposedByMe / sofUploadedByMe / screening.submittedByMe flags are computed relative to it."
            },
            "required": false,
            "description": "Optional account id (email) within the calling workspace; the proposedByMe / sofUploadedByMe / screening.submittedByMe flags are computed relative to it.",
            "name": "accountId",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful retrieval of pending payment",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "description": "Transfer identifier — use this to call /link, /create-deposit, or /create-order"
                        },
                        "amount": {
                          "type": "number",
                          "description": "Amount received"
                        },
                        "currency": {
                          "type": "string",
                          "description": "Currency (ISO 4217, e.g. EUR)"
                        },
                        "date": {
                          "type": "string",
                          "description": "Date the payment was received (ISO 8601)"
                        },
                        "timestamp": {
                          "type": "number",
                          "description": "Transfer date as epoch milliseconds — use this for sorting/display; the `date` string is locale-formatted and must not be re-parsed"
                        },
                        "reference": {
                          "type": "string",
                          "nullable": true,
                          "description": "Payment reference text provided by the sender"
                        },
                        "counterparty": {
                          "type": "object",
                          "properties": {
                            "name": {
                              "type": "string",
                              "description": "Sender name"
                            },
                            "iban": {
                              "type": "string",
                              "description": "Sender IBAN"
                            }
                          },
                          "description": "Basic sender information"
                        },
                        "refundStatus": {
                          "type": "string",
                          "enum": [
                            "pending_approval",
                            "returning",
                            "returned",
                            "failed"
                          ],
                          "description": "Refund state of this payment. Only present while a refund is in play — a payment with no refund in progress carries no such field. `pending_approval`: a refund has been requested and the amount is held; nothing has been sent to the payer. `returning`: the return has been submitted and is awaiting confirmation — intent, not proof, so do not treat the payer as repaid. `returned`: confirmed, the payer has the money back; final. `failed`: the return was rejected and the payment stays held; final. Only `returned` proves the money reached the payer. While this field is present the payment cannot be linked to an order or a deposit."
                        },
                        "reviewReason": {
                          "type": "string",
                          "nullable": true
                        },
                        "complianceDocuments": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "path": {
                                "type": "string"
                              },
                              "fileName": {
                                "type": "string"
                              },
                              "uploadedBy": {
                                "type": "string"
                              },
                              "uploadedByKind": {
                                "type": "string",
                                "enum": [
                                  "operator",
                                  "workspace"
                                ]
                              },
                              "uploadedAt": {
                                "type": "number"
                              },
                              "comment": {
                                "type": "string"
                              }
                            },
                            "required": [
                              "path"
                            ]
                          }
                        },
                        "preLinked": {
                          "type": "object",
                          "nullable": true,
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "order",
                                "deposit"
                              ]
                            },
                            "id": {
                              "type": "string"
                            },
                            "confidence": {
                              "type": "number"
                            },
                            "note": {
                              "type": "string"
                            },
                            "timestamp": {
                              "type": "number"
                            },
                            "reasonCode": {
                              "type": "string",
                              "enum": [
                                "joint_account",
                                "wrong_name_on_payment",
                                "wrong_name_on_order_or_deposit"
                              ]
                            },
                            "isProposal": {
                              "type": "boolean"
                            },
                            "proposedBy": {
                              "type": "string"
                            },
                            "proposedByMe": {
                              "type": "boolean"
                            },
                            "hasDocuments": {
                              "type": "boolean"
                            }
                          },
                          "required": [
                            "type",
                            "id",
                            "confidence",
                            "isProposal",
                            "proposedByMe",
                            "hasDocuments"
                          ]
                        },
                        "sofUploadedByMe": {
                          "type": "boolean"
                        },
                        "sofLastUploadedAt": {
                          "type": "number"
                        },
                        "screening": {
                          "type": "object",
                          "nullable": true,
                          "properties": {
                            "submitted": {
                              "type": "boolean"
                            },
                            "submittedBy": {
                              "type": "string"
                            },
                            "submittedByMe": {
                              "type": "boolean"
                            },
                            "submittedAt": {
                              "type": "number"
                            }
                          },
                          "required": [
                            "submitted",
                            "submittedByMe"
                          ]
                        }
                      },
                      "required": [
                        "id",
                        "amount",
                        "currency"
                      ]
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Transfer not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/pending-payments/trf_5Xy9Kd1p\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/pending-payments/trf_5Xy9Kd1p\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/pending-payments/trf_5Xy9Kd1p\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/pending-payments/{transferId}/link": {
      "post": {
        "summary": "Link transfer to an order or deposit",
        "description": "Links an incoming transfer to an existing order or deposit. Provide the `entityId` (order ID or deposit ID) and the `entityType`.",
        "tags": [
          "Pending Payments"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string"
            },
            "required": true,
            "name": "transferId",
            "in": "path"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "transferId": {
                    "type": "string",
                    "description": "Transfer ID without provider prefix (from path parameter)",
                    "example": "12345"
                  },
                  "entityId": {
                    "type": "string",
                    "description": "Order ID or Deposit ID to link to (from request body)",
                    "example": "01CLFXMT67II"
                  },
                  "entityType": {
                    "type": "string",
                    "enum": [
                      "order",
                      "deposit"
                    ],
                    "description": "Type of entity to link to (from request body)",
                    "example": "deposit"
                  }
                },
                "required": [
                  "transferId",
                  "entityId",
                  "entityType"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Transfer linked successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "message": {
                          "type": "string"
                        },
                        "transferId": {
                          "type": "string"
                        },
                        "entityId": {
                          "type": "string"
                        },
                        "entityType": {
                          "type": "string",
                          "enum": [
                            "order",
                            "deposit"
                          ]
                        }
                      },
                      "required": [
                        "transferId",
                        "entityId",
                        "entityType"
                      ]
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "409": {
            "description": "Conflict — the transfer cannot be actioned in its current state: it is under review by the VirtuaBroker team (for example, pending name verification) or already linked to another order or deposit. The error message explains the specific reason.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/pending-payments/trf_5Xy9Kd1p/link\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"transferId\": \"12345\",\n      \"entityId\": \"01CLFXMT67II\",\n      \"entityType\": \"deposit\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api.virtuabroker.com/v1/pending-payments/trf_5Xy9Kd1p/link\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"transferId\": \"12345\",\n        \"entityId\": \"01CLFXMT67II\",\n        \"entityType\": \"deposit\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api.virtuabroker.com/v1/pending-payments/trf_5Xy9Kd1p/link\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"transferId\": \"12345\",\n  \"entityId\": \"01CLFXMT67II\",\n  \"entityType\": \"deposit\"\n}'"
          }
        ]
      }
    },
    "/v1/pending-payments/{transferId}/propose-link": {
      "post": {
        "summary": "Propose linking a transfer whose payer details do not match",
        "description": "Use this when `POST /v1/pending-payments/{transferId}/link` is refused because the payer on the transfer does not match the holder on the order or deposit — a payment sent from a partner's account, a maiden name, or a typo in the reference.\n\nInstead of rejecting the payment, you submit the link as a proposal with the reason. If the matching confidence is high enough the transfer is linked immediately (`result: \"linked\"`); otherwise it is stored for review and `result` is `\"proposed\"`, with `reason` telling you which detail did not match. Either way the payment stops sitting unattributed.\n\nThe transfer is identified by the path parameter — do not repeat it in the body.",
        "tags": [
          "Pending Payments"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "description": "Transfer ID, as returned by GET /v1/pending-payments"
            },
            "required": true,
            "description": "Transfer ID, as returned by GET /v1/pending-payments",
            "name": "transferId",
            "in": "path"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "entityId": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Deposit ID or Order ID to propose linking to",
                    "example": "01CLFXMT67II"
                  },
                  "note": {
                    "type": "string",
                    "maxLength": 500,
                    "description": "Optional note from the proposer explaining the link",
                    "example": "This is my regular monthly payment despite the different sender name."
                  },
                  "reasonCode": {
                    "type": "string",
                    "enum": [
                      "joint_account",
                      "wrong_name_on_payment",
                      "wrong_name_on_order_or_deposit"
                    ],
                    "description": "Optional reason the payer details do not match: joint_account (payment from a partner/joint account holder), wrong_name_on_payment, or wrong_name_on_order_or_deposit.",
                    "example": "joint_account"
                  }
                },
                "required": [
                  "entityId"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Proposal accepted — either linked outright or stored for review",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "result": {
                          "type": "string",
                          "enum": [
                            "linked",
                            "proposed"
                          ],
                          "description": "\"linked\" = auto-linked (score ≥ threshold), \"proposed\" = stored for admin review"
                        },
                        "confidence": {
                          "type": "number",
                          "minimum": 0,
                          "maximum": 100,
                          "description": "Matching confidence score"
                        },
                        "entityType": {
                          "type": "string",
                          "enum": [
                            "order",
                            "deposit"
                          ],
                          "description": "Resolved entity type"
                        },
                        "message": {
                          "type": "string"
                        },
                        "reason": {
                          "type": "string",
                          "enum": [
                            "name_mismatch",
                            "amount_mismatch",
                            "low_confidence"
                          ],
                          "description": "When result=\"proposed\": abstract code for why the proposal was not auto-confirmed (name_mismatch = payer name differs from the holder; amount_mismatch = amount differs; low_confidence = not enough matching detail). Omitted when result=\"linked\".",
                          "example": "name_mismatch"
                        }
                      },
                      "required": [
                        "result",
                        "confidence",
                        "entityType"
                      ]
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Bad request — invalid parameters",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "404": {
            "description": "Transfer or target order/deposit not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "409": {
            "description": "Conflict — the transfer cannot be actioned in its current state: already linked, or already carrying a proposal under review.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/pending-payments/trf_5Xy9Kd1p/propose-link\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"entityId\": \"01CLFXMT67II\",\n      \"note\": \"This is my regular monthly payment despite the different sender name.\",\n      \"reasonCode\": \"joint_account\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api.virtuabroker.com/v1/pending-payments/trf_5Xy9Kd1p/propose-link\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"entityId\": \"01CLFXMT67II\",\n        \"note\": \"This is my regular monthly payment despite the different sender name.\",\n        \"reasonCode\": \"joint_account\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api.virtuabroker.com/v1/pending-payments/trf_5Xy9Kd1p/propose-link\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"entityId\": \"01CLFXMT67II\",\n  \"note\": \"This is my regular monthly payment despite the different sender name.\",\n  \"reasonCode\": \"joint_account\"\n}'"
          }
        ]
      }
    },
    "/v1/pending-payments/{transferId}/create-deposit": {
      "post": {
        "summary": "Create a deposit from a pending transfer",
        "description": "Creates a new deposit using an incoming transfer as the funding source. The transfer is automatically linked to the resulting deposit.",
        "tags": [
          "Pending Payments"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string"
            },
            "required": true,
            "name": "transferId",
            "in": "path"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "allOf": [
                      {
                        "type": "object",
                        "properties": {
                          "externalReference": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 128,
                            "description": "Your own reference for this deposit. Stored as-is and returned on create, detail and list, so you can look the deposit up by it after a network timeout instead of retrying blind. Not interpreted by VirtuaBroker and not shown to the payer — for the payer's transfer reference use depositInfo.referenceCode.",
                            "examples": [
                              "partner-ref-0001",
                              "inv_2026_00417"
                            ]
                          },
                          "userData": {
                            "oneOf": [
                              {
                                "type": "object",
                                "properties": {
                                  "userType": {
                                    "type": "string",
                                    "enum": [
                                      "individual"
                                    ]
                                  },
                                  "firstName": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 50,
                                    "description": "First name of the user making the deposit (or representative for business)",
                                    "examples": [
                                      "John",
                                      "Alice",
                                      "Bob"
                                    ]
                                  },
                                  "lastName": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 100,
                                    "description": "Last name of the user making the deposit (or representative for business)",
                                    "examples": [
                                      "Doe",
                                      "Smith",
                                      "Johnson"
                                    ]
                                  },
                                  "userEmail": {
                                    "type": "string",
                                    "maxLength": 254,
                                    "format": "email",
                                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                    "description": "Email of the user making the deposit",
                                    "examples": [
                                      "user@virtuabroker.com",
                                      "john.doe@example.com",
                                      "alice@example.com"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "maxLength": 150,
                                    "description": "Address of the user making the deposit",
                                    "examples": [
                                      "123 Main St, Anytown, ES",
                                      "456 Elm St, Anytown, ES",
                                      "789 Oak St, Anytown, ES"
                                    ]
                                  },
                                  "taxDocumentType": {
                                    "type": "string",
                                    "maxLength": 50,
                                    "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                    "examples": [
                                      "CC",
                                      "NIT",
                                      "CE",
                                      "NIF",
                                      "Other"
                                    ]
                                  },
                                  "taxId": {
                                    "type": "string",
                                    "maxLength": 30,
                                    "description": "Tax ID of the user making the deposit",
                                    "examples": [
                                      "123-45-6789",
                                      "987-65-4321",
                                      "111-22-3333"
                                    ]
                                  },
                                  "country": {
                                    "type": "string",
                                    "enum": [
                                      "US",
                                      "CA",
                                      "GB",
                                      "DE",
                                      "FR",
                                      "AU",
                                      "JP",
                                      "KR",
                                      "SE",
                                      "NO",
                                      "DK",
                                      "FI",
                                      "NL",
                                      "BE",
                                      "CH",
                                      "AT",
                                      "NZ",
                                      "SG",
                                      "IE",
                                      "LU",
                                      "PT",
                                      "ES",
                                      "IT",
                                      "GR",
                                      "CZ",
                                      "PL",
                                      "HU",
                                      "SK",
                                      "SI",
                                      "EE",
                                      "LT",
                                      "LV",
                                      "IS",
                                      "MT",
                                      "CY",
                                      "HR",
                                      "RO",
                                      "BG",
                                      "BR",
                                      "AR",
                                      "CL",
                                      "MX",
                                      "CO",
                                      "PE",
                                      "PA",
                                      "UY",
                                      "BO",
                                      "ZA",
                                      "NG",
                                      "KE",
                                      "GH",
                                      "TZ",
                                      "UG",
                                      "RW",
                                      "MW",
                                      "ZM",
                                      "BW",
                                      "CD",
                                      "CI",
                                      "CM",
                                      "IL",
                                      "AE",
                                      "QA",
                                      "SA",
                                      "OM",
                                      "KW",
                                      "BH",
                                      "MY",
                                      "PH",
                                      "TH",
                                      "VN",
                                      "ID",
                                      "IN",
                                      "LK",
                                      "NP",
                                      "BD",
                                      "PK",
                                      "EG",
                                      "MA",
                                      "DZ",
                                      "TN",
                                      "JO",
                                      "LB",
                                      "TR",
                                      "KH",
                                      "MM",
                                      "LA",
                                      "EN",
                                      "BT",
                                      "VE",
                                      "TW",
                                      "HK",
                                      "CN"
                                    ],
                                    "description": "Country code of the user making the deposit",
                                    "examples": [
                                      "ES",
                                      "US",
                                      "GB"
                                    ]
                                  },
                                  "state": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 100,
                                    "description": "State of the user making the deposit",
                                    "examples": [
                                      "Madrid",
                                      "New York",
                                      "London"
                                    ]
                                  },
                                  "postalCode": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 30,
                                    "description": "Postal code of the user making the deposit",
                                    "examples": [
                                      "12345",
                                      "67890",
                                      "abcde"
                                    ]
                                  },
                                  "city": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 100,
                                    "description": "City of the user making the deposit",
                                    "examples": [
                                      "Madrid",
                                      "New York",
                                      "London"
                                    ]
                                  },
                                  "dob": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 30,
                                    "description": "Date of birth of the user making the deposit",
                                    "examples": [
                                      "1990-01-01",
                                      "1995-05-15",
                                      "1988-12-31"
                                    ]
                                  },
                                  "phoneNumber": {
                                    "type": "string",
                                    "maxLength": 30,
                                    "description": "Phone number of the user making the deposit",
                                    "examples": [
                                      "+447700900123",
                                      "+447700900456",
                                      "+447700900789"
                                    ]
                                  },
                                  "kycId": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 300,
                                    "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                    "examples": [
                                      "kyc-12345",
                                      "kyc-67890",
                                      "kyc-abcde"
                                    ]
                                  },
                                  "activity": {
                                    "type": "string",
                                    "description": "Activity of the user making the deposit",
                                    "examples": [
                                      "worker",
                                      "business",
                                      "student"
                                    ]
                                  }
                                },
                                "required": [
                                  "userType",
                                  "firstName",
                                  "userEmail",
                                  "country"
                                ]
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "userType": {
                                    "type": "string",
                                    "enum": [
                                      "business"
                                    ]
                                  },
                                  "businessName": {
                                    "type": "string",
                                    "maxLength": 150,
                                    "description": "Business name (required when userType is business)",
                                    "examples": [
                                      "Acme Corp",
                                      "Tech Solutions Inc",
                                      "Global Services Ltd"
                                    ]
                                  },
                                  "firstName": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 50,
                                    "description": "First name of the user making the deposit (or representative for business)",
                                    "examples": [
                                      "John",
                                      "Alice",
                                      "Bob"
                                    ]
                                  },
                                  "userEmail": {
                                    "type": "string",
                                    "maxLength": 254,
                                    "format": "email",
                                    "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                    "description": "Email of the user making the deposit",
                                    "examples": [
                                      "user@virtuabroker.com",
                                      "john.doe@example.com",
                                      "alice@example.com"
                                    ]
                                  },
                                  "address": {
                                    "type": "string",
                                    "maxLength": 150,
                                    "description": "Address of the user making the deposit",
                                    "examples": [
                                      "123 Main St, Anytown, ES",
                                      "456 Elm St, Anytown, ES",
                                      "789 Oak St, Anytown, ES"
                                    ]
                                  },
                                  "taxDocumentType": {
                                    "type": "string",
                                    "maxLength": 50,
                                    "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                    "examples": [
                                      "CC",
                                      "NIT",
                                      "CE",
                                      "NIF",
                                      "Other"
                                    ]
                                  },
                                  "taxId": {
                                    "type": "string",
                                    "maxLength": 30,
                                    "description": "Tax ID of the user making the deposit",
                                    "examples": [
                                      "123-45-6789",
                                      "987-65-4321",
                                      "111-22-3333"
                                    ]
                                  },
                                  "country": {
                                    "type": "string",
                                    "enum": [
                                      "US",
                                      "CA",
                                      "GB",
                                      "DE",
                                      "FR",
                                      "AU",
                                      "JP",
                                      "KR",
                                      "SE",
                                      "NO",
                                      "DK",
                                      "FI",
                                      "NL",
                                      "BE",
                                      "CH",
                                      "AT",
                                      "NZ",
                                      "SG",
                                      "IE",
                                      "LU",
                                      "PT",
                                      "ES",
                                      "IT",
                                      "GR",
                                      "CZ",
                                      "PL",
                                      "HU",
                                      "SK",
                                      "SI",
                                      "EE",
                                      "LT",
                                      "LV",
                                      "IS",
                                      "MT",
                                      "CY",
                                      "HR",
                                      "RO",
                                      "BG",
                                      "BR",
                                      "AR",
                                      "CL",
                                      "MX",
                                      "CO",
                                      "PE",
                                      "PA",
                                      "UY",
                                      "BO",
                                      "ZA",
                                      "NG",
                                      "KE",
                                      "GH",
                                      "TZ",
                                      "UG",
                                      "RW",
                                      "MW",
                                      "ZM",
                                      "BW",
                                      "CD",
                                      "CI",
                                      "CM",
                                      "IL",
                                      "AE",
                                      "QA",
                                      "SA",
                                      "OM",
                                      "KW",
                                      "BH",
                                      "MY",
                                      "PH",
                                      "TH",
                                      "VN",
                                      "ID",
                                      "IN",
                                      "LK",
                                      "NP",
                                      "BD",
                                      "PK",
                                      "EG",
                                      "MA",
                                      "DZ",
                                      "TN",
                                      "JO",
                                      "LB",
                                      "TR",
                                      "KH",
                                      "MM",
                                      "LA",
                                      "EN",
                                      "BT",
                                      "VE",
                                      "TW",
                                      "HK",
                                      "CN"
                                    ],
                                    "description": "Country code of the user making the deposit",
                                    "examples": [
                                      "ES",
                                      "US",
                                      "GB"
                                    ]
                                  },
                                  "state": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 100,
                                    "description": "State of the user making the deposit",
                                    "examples": [
                                      "Madrid",
                                      "New York",
                                      "London"
                                    ]
                                  },
                                  "postalCode": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 30,
                                    "description": "Postal code of the user making the deposit",
                                    "examples": [
                                      "12345",
                                      "67890",
                                      "abcde"
                                    ]
                                  },
                                  "city": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 100,
                                    "description": "City of the user making the deposit",
                                    "examples": [
                                      "Madrid",
                                      "New York",
                                      "London"
                                    ]
                                  },
                                  "dob": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 30,
                                    "description": "Date of birth of the user making the deposit",
                                    "examples": [
                                      "1990-01-01",
                                      "1995-05-15",
                                      "1988-12-31"
                                    ]
                                  },
                                  "phoneNumber": {
                                    "type": "string",
                                    "maxLength": 30,
                                    "description": "Phone number of the user making the deposit",
                                    "examples": [
                                      "+447700900123",
                                      "+447700900456",
                                      "+447700900789"
                                    ]
                                  },
                                  "kycId": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 300,
                                    "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                    "examples": [
                                      "kyc-12345",
                                      "kyc-67890",
                                      "kyc-abcde"
                                    ]
                                  },
                                  "activity": {
                                    "type": "string",
                                    "description": "Activity of the user making the deposit",
                                    "examples": [
                                      "worker",
                                      "business",
                                      "student"
                                    ]
                                  }
                                },
                                "required": [
                                  "userType",
                                  "businessName",
                                  "firstName",
                                  "userEmail",
                                  "country"
                                ]
                              }
                            ],
                            "description": "User data of the person/company making the deposit"
                          },
                          "userDataId": {
                            "type": "string",
                            "description": "Account ID of the person/company making the deposit",
                            "examples": [
                              "d290f1ee-6c54-4b01-90e6-d701748f0851"
                            ]
                          },
                          "originCountry": {
                            "type": "string",
                            "minLength": 2,
                            "maxLength": 2,
                            "description": "Collection country (ISO-3166 alpha-2) for a multi-country payin currency (CFA zones). Must be a valid collection country for the currency; omitted ⇒ the default collection country is used.",
                            "examples": [
                              "CI",
                              "SN",
                              "CM"
                            ]
                          },
                          "originNetworkId": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 64,
                            "description": "Collection network the payer will pay from, for a mobile-money payin corridor. Must be one of the ids returned by GET /v1/currencies/{currency}/networks?rail={rail}&rampType=deposit — passing the same rail, and the same country where the currency is collected across several — not free text. Required only where the corridor offers more than one network; a single-network corridor resolves it automatically and needs no value.",
                            "examples": [
                              "3f9a1c7e-2b4d-4e8a-9c1f-0a1b2c3d4e5f"
                            ]
                          }
                        }
                      },
                      {
                        "anyOf": [
                          {
                            "type": "object",
                            "properties": {
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "exclusiveMinimum": true,
                                "description": "Amount to be deposited",
                                "examples": [
                                  100,
                                  1000,
                                  5000,
                                  10000
                                ]
                              },
                              "currency": {
                                "type": "string",
                                "enum": [
                                  "USDC",
                                  "USDT",
                                  "CUSD",
                                  "BTC",
                                  "ETH",
                                  "POL",
                                  "SOL",
                                  "TRX",
                                  "AVAX",
                                  "XRP",
                                  "BNB"
                                ],
                                "description": "Currency of the deposit",
                                "examples": [
                                  "USDC",
                                  "CUSD",
                                  "ETH"
                                ]
                              },
                              "rail": {
                                "anyOf": [
                                  {
                                    "type": "string",
                                    "enum": [
                                      "BTC",
                                      "ETH",
                                      "MATIC",
                                      "CELO",
                                      "SOLANA",
                                      "TRON",
                                      "BSC",
                                      "XRP",
                                      "ARBITRUM",
                                      "OPTIMISM",
                                      "AVALANCHE",
                                      "BASE",
                                      "CARDANO"
                                    ]
                                  },
                                  {
                                    "type": "string",
                                    "enum": [
                                      "BALANCE"
                                    ]
                                  }
                                ]
                              }
                            },
                            "required": [
                              "amount",
                              "currency",
                              "rail"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "exclusiveMinimum": true,
                                "description": "Amount to be deposited",
                                "examples": [
                                  100,
                                  1000,
                                  5000,
                                  10000
                                ]
                              },
                              "currency": {
                                "type": "string",
                                "enum": [
                                  "EUR",
                                  "USD",
                                  "GBP",
                                  "BRL",
                                  "MXN",
                                  "ARS",
                                  "COP",
                                  "PEN",
                                  "NGN",
                                  "KES",
                                  "TZS",
                                  "UGX",
                                  "RWF",
                                  "MWK",
                                  "ZMW",
                                  "XOF",
                                  "XAF",
                                  "BWP"
                                ],
                                "description": "Currency of the deposit",
                                "examples": [
                                  "EUR",
                                  "BRL"
                                ]
                              },
                              "rail": {
                                "type": "string",
                                "enum": [
                                  "BALANCE",
                                  "SEPA",
                                  "BTC",
                                  "ETH",
                                  "MATIC",
                                  "POLYGON",
                                  "CELO",
                                  "TRON",
                                  "SOLANA",
                                  "ARBITRUM",
                                  "OPTIMISM",
                                  "AVALANCHE",
                                  "BSC",
                                  "BASE",
                                  "XRP",
                                  "PIX_BR",
                                  "UPI",
                                  "IMPS",
                                  "TRY_BANK_TRANSFER",
                                  "AED_BANK_TRANSFER",
                                  "SPEI",
                                  "IDR_BANK_TRANSFER",
                                  "CREDIT_CARD",
                                  "THAI_QR",
                                  "VIET_QR",
                                  "GCASH",
                                  "ARGENTINA_BANK_TRANSFER",
                                  "PSE",
                                  "CLABE",
                                  "PIX",
                                  "BANK_DEPOSIT_COL",
                                  "BANK_DEPOSIT_AR",
                                  "BANK_DEPOSIT_CL",
                                  "BANK_DEPOSIT_PE",
                                  "BANK_DEPOSIT_BO",
                                  "BANK_DEPOSIT_BR",
                                  "BANK_DEPOSIT_NG",
                                  "BANK_DEPOSIT_KE",
                                  "BANK_DEPOSIT_GH",
                                  "BANK_DEPOSIT_ZA",
                                  "BANK_DEPOSIT_TZ",
                                  "BANK_DEPOSIT_UG",
                                  "BANK_DEPOSIT_RW",
                                  "BANK_DEPOSIT_MW",
                                  "BANK_DEPOSIT_ZM",
                                  "BANK_DEPOSIT_BW",
                                  "BANK_DEPOSIT_CD",
                                  "BANK_DEPOSIT_XOF",
                                  "BANK_DEPOSIT_XAF",
                                  "MOBILE_MONEY_NG",
                                  "MOBILE_MONEY_KE",
                                  "MOBILE_MONEY_GH",
                                  "MOBILE_MONEY_ZA",
                                  "MOBILE_MONEY_TZ",
                                  "MOBILE_MONEY_UG",
                                  "MOBILE_MONEY_RW",
                                  "MOBILE_MONEY_MW",
                                  "MOBILE_MONEY_ZM",
                                  "MOBILE_MONEY_BW",
                                  "MOBILE_MONEY_CD",
                                  "MOBILE_MONEY_XOF",
                                  "MOBILE_MONEY_XAF",
                                  "ACH_US",
                                  "GBP_BANK_TRANSFER"
                                ],
                                "description": "Rail for the deposit for fiat deposits",
                                "examples": [
                                  "SEPA",
                                  "MATIC"
                                ]
                              }
                            },
                            "required": [
                              "currency"
                            ]
                          }
                        ]
                      }
                    ],
                    "description": "Request schema for creating a deposit. Must provide either userData or userDataId."
                  },
                  {
                    "type": "object",
                    "properties": {
                      "transferId": {
                        "type": "string",
                        "description": "Transfer ID without provider prefix (from path parameter)",
                        "example": "12345"
                      }
                    },
                    "required": [
                      "transferId"
                    ]
                  }
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Deposit created and transfer linked",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "allOf": [
                        {
                          "type": "object",
                          "properties": {
                            "depositId": {
                              "type": "string",
                              "minLength": 1,
                              "description": "ID of the deposit. Normally a 12-character internal id; deposits created before mid-2026 may carry a longer legacy id. Treat it as an opaque string."
                            },
                            "externalReference": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 128,
                              "description": "Your own reference for this deposit. Stored as-is and returned on create, detail and list, so you can look the deposit up by it after a network timeout instead of retrying blind. Not interpreted by VirtuaBroker and not shown to the payer — for the payer's transfer reference use depositInfo.referenceCode.",
                              "examples": [
                                "partner-ref-0001",
                                "inv_2026_00417"
                              ]
                            },
                            "userData": {
                              "oneOf": [
                                {
                                  "type": "object",
                                  "properties": {
                                    "userType": {
                                      "type": "string",
                                      "enum": [
                                        "individual"
                                      ]
                                    },
                                    "firstName": {
                                      "type": "string",
                                      "minLength": 1,
                                      "maxLength": 50,
                                      "description": "First name of the user making the deposit (or representative for business)",
                                      "examples": [
                                        "John",
                                        "Alice",
                                        "Bob"
                                      ]
                                    },
                                    "lastName": {
                                      "type": "string",
                                      "minLength": 1,
                                      "maxLength": 100,
                                      "description": "Last name of the user making the deposit (or representative for business)",
                                      "examples": [
                                        "Doe",
                                        "Smith",
                                        "Johnson"
                                      ]
                                    },
                                    "userEmail": {
                                      "type": "string",
                                      "maxLength": 254,
                                      "format": "email",
                                      "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                      "description": "Email of the user making the deposit",
                                      "examples": [
                                        "user@virtuabroker.com",
                                        "john.doe@example.com",
                                        "alice@example.com"
                                      ]
                                    },
                                    "address": {
                                      "type": "string",
                                      "maxLength": 150,
                                      "description": "Address of the user making the deposit",
                                      "examples": [
                                        "123 Main St, Anytown, ES",
                                        "456 Elm St, Anytown, ES",
                                        "789 Oak St, Anytown, ES"
                                      ]
                                    },
                                    "taxDocumentType": {
                                      "type": "string",
                                      "maxLength": 50,
                                      "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                      "examples": [
                                        "CC",
                                        "NIT",
                                        "CE",
                                        "NIF",
                                        "Other"
                                      ]
                                    },
                                    "taxId": {
                                      "type": "string",
                                      "maxLength": 30,
                                      "description": "Tax ID of the user making the deposit",
                                      "examples": [
                                        "123-45-6789",
                                        "987-65-4321",
                                        "111-22-3333"
                                      ]
                                    },
                                    "country": {
                                      "type": "string",
                                      "enum": [
                                        "US",
                                        "CA",
                                        "GB",
                                        "DE",
                                        "FR",
                                        "AU",
                                        "JP",
                                        "KR",
                                        "SE",
                                        "NO",
                                        "DK",
                                        "FI",
                                        "NL",
                                        "BE",
                                        "CH",
                                        "AT",
                                        "NZ",
                                        "SG",
                                        "IE",
                                        "LU",
                                        "PT",
                                        "ES",
                                        "IT",
                                        "GR",
                                        "CZ",
                                        "PL",
                                        "HU",
                                        "SK",
                                        "SI",
                                        "EE",
                                        "LT",
                                        "LV",
                                        "IS",
                                        "MT",
                                        "CY",
                                        "HR",
                                        "RO",
                                        "BG",
                                        "BR",
                                        "AR",
                                        "CL",
                                        "MX",
                                        "CO",
                                        "PE",
                                        "PA",
                                        "UY",
                                        "BO",
                                        "ZA",
                                        "NG",
                                        "KE",
                                        "GH",
                                        "TZ",
                                        "UG",
                                        "RW",
                                        "MW",
                                        "ZM",
                                        "BW",
                                        "CD",
                                        "CI",
                                        "CM",
                                        "IL",
                                        "AE",
                                        "QA",
                                        "SA",
                                        "OM",
                                        "KW",
                                        "BH",
                                        "MY",
                                        "PH",
                                        "TH",
                                        "VN",
                                        "ID",
                                        "IN",
                                        "LK",
                                        "NP",
                                        "BD",
                                        "PK",
                                        "EG",
                                        "MA",
                                        "DZ",
                                        "TN",
                                        "JO",
                                        "LB",
                                        "TR",
                                        "KH",
                                        "MM",
                                        "LA",
                                        "EN",
                                        "BT",
                                        "VE",
                                        "TW",
                                        "HK",
                                        "CN"
                                      ],
                                      "description": "Country code of the user making the deposit",
                                      "examples": [
                                        "ES",
                                        "US",
                                        "GB"
                                      ]
                                    },
                                    "state": {
                                      "type": "string",
                                      "minLength": 1,
                                      "maxLength": 100,
                                      "description": "State of the user making the deposit",
                                      "examples": [
                                        "Madrid",
                                        "New York",
                                        "London"
                                      ]
                                    },
                                    "postalCode": {
                                      "type": "string",
                                      "minLength": 1,
                                      "maxLength": 30,
                                      "description": "Postal code of the user making the deposit",
                                      "examples": [
                                        "12345",
                                        "67890",
                                        "abcde"
                                      ]
                                    },
                                    "city": {
                                      "type": "string",
                                      "minLength": 1,
                                      "maxLength": 100,
                                      "description": "City of the user making the deposit",
                                      "examples": [
                                        "Madrid",
                                        "New York",
                                        "London"
                                      ]
                                    },
                                    "dob": {
                                      "type": "string",
                                      "minLength": 1,
                                      "maxLength": 30,
                                      "description": "Date of birth of the user making the deposit",
                                      "examples": [
                                        "1990-01-01",
                                        "1995-05-15",
                                        "1988-12-31"
                                      ]
                                    },
                                    "phoneNumber": {
                                      "type": "string",
                                      "maxLength": 30,
                                      "description": "Phone number of the user making the deposit",
                                      "examples": [
                                        "+447700900123",
                                        "+447700900456",
                                        "+447700900789"
                                      ]
                                    },
                                    "kycId": {
                                      "type": "string",
                                      "minLength": 1,
                                      "maxLength": 300,
                                      "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                      "examples": [
                                        "kyc-12345",
                                        "kyc-67890",
                                        "kyc-abcde"
                                      ]
                                    },
                                    "activity": {
                                      "type": "string",
                                      "description": "Activity of the user making the deposit",
                                      "examples": [
                                        "worker",
                                        "business",
                                        "student"
                                      ]
                                    }
                                  },
                                  "required": [
                                    "userType",
                                    "firstName",
                                    "userEmail",
                                    "country"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "userType": {
                                      "type": "string",
                                      "enum": [
                                        "business"
                                      ]
                                    },
                                    "businessName": {
                                      "type": "string",
                                      "maxLength": 150,
                                      "description": "Business name (required when userType is business)",
                                      "examples": [
                                        "Acme Corp",
                                        "Tech Solutions Inc",
                                        "Global Services Ltd"
                                      ]
                                    },
                                    "firstName": {
                                      "type": "string",
                                      "minLength": 1,
                                      "maxLength": 50,
                                      "description": "First name of the user making the deposit (or representative for business)",
                                      "examples": [
                                        "John",
                                        "Alice",
                                        "Bob"
                                      ]
                                    },
                                    "userEmail": {
                                      "type": "string",
                                      "maxLength": 254,
                                      "format": "email",
                                      "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                      "description": "Email of the user making the deposit",
                                      "examples": [
                                        "user@virtuabroker.com",
                                        "john.doe@example.com",
                                        "alice@example.com"
                                      ]
                                    },
                                    "address": {
                                      "type": "string",
                                      "maxLength": 150,
                                      "description": "Address of the user making the deposit",
                                      "examples": [
                                        "123 Main St, Anytown, ES",
                                        "456 Elm St, Anytown, ES",
                                        "789 Oak St, Anytown, ES"
                                      ]
                                    },
                                    "taxDocumentType": {
                                      "type": "string",
                                      "maxLength": 50,
                                      "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                      "examples": [
                                        "CC",
                                        "NIT",
                                        "CE",
                                        "NIF",
                                        "Other"
                                      ]
                                    },
                                    "taxId": {
                                      "type": "string",
                                      "maxLength": 30,
                                      "description": "Tax ID of the user making the deposit",
                                      "examples": [
                                        "123-45-6789",
                                        "987-65-4321",
                                        "111-22-3333"
                                      ]
                                    },
                                    "country": {
                                      "type": "string",
                                      "enum": [
                                        "US",
                                        "CA",
                                        "GB",
                                        "DE",
                                        "FR",
                                        "AU",
                                        "JP",
                                        "KR",
                                        "SE",
                                        "NO",
                                        "DK",
                                        "FI",
                                        "NL",
                                        "BE",
                                        "CH",
                                        "AT",
                                        "NZ",
                                        "SG",
                                        "IE",
                                        "LU",
                                        "PT",
                                        "ES",
                                        "IT",
                                        "GR",
                                        "CZ",
                                        "PL",
                                        "HU",
                                        "SK",
                                        "SI",
                                        "EE",
                                        "LT",
                                        "LV",
                                        "IS",
                                        "MT",
                                        "CY",
                                        "HR",
                                        "RO",
                                        "BG",
                                        "BR",
                                        "AR",
                                        "CL",
                                        "MX",
                                        "CO",
                                        "PE",
                                        "PA",
                                        "UY",
                                        "BO",
                                        "ZA",
                                        "NG",
                                        "KE",
                                        "GH",
                                        "TZ",
                                        "UG",
                                        "RW",
                                        "MW",
                                        "ZM",
                                        "BW",
                                        "CD",
                                        "CI",
                                        "CM",
                                        "IL",
                                        "AE",
                                        "QA",
                                        "SA",
                                        "OM",
                                        "KW",
                                        "BH",
                                        "MY",
                                        "PH",
                                        "TH",
                                        "VN",
                                        "ID",
                                        "IN",
                                        "LK",
                                        "NP",
                                        "BD",
                                        "PK",
                                        "EG",
                                        "MA",
                                        "DZ",
                                        "TN",
                                        "JO",
                                        "LB",
                                        "TR",
                                        "KH",
                                        "MM",
                                        "LA",
                                        "EN",
                                        "BT",
                                        "VE",
                                        "TW",
                                        "HK",
                                        "CN"
                                      ],
                                      "description": "Country code of the user making the deposit",
                                      "examples": [
                                        "ES",
                                        "US",
                                        "GB"
                                      ]
                                    },
                                    "state": {
                                      "type": "string",
                                      "minLength": 1,
                                      "maxLength": 100,
                                      "description": "State of the user making the deposit",
                                      "examples": [
                                        "Madrid",
                                        "New York",
                                        "London"
                                      ]
                                    },
                                    "postalCode": {
                                      "type": "string",
                                      "minLength": 1,
                                      "maxLength": 30,
                                      "description": "Postal code of the user making the deposit",
                                      "examples": [
                                        "12345",
                                        "67890",
                                        "abcde"
                                      ]
                                    },
                                    "city": {
                                      "type": "string",
                                      "minLength": 1,
                                      "maxLength": 100,
                                      "description": "City of the user making the deposit",
                                      "examples": [
                                        "Madrid",
                                        "New York",
                                        "London"
                                      ]
                                    },
                                    "dob": {
                                      "type": "string",
                                      "minLength": 1,
                                      "maxLength": 30,
                                      "description": "Date of birth of the user making the deposit",
                                      "examples": [
                                        "1990-01-01",
                                        "1995-05-15",
                                        "1988-12-31"
                                      ]
                                    },
                                    "phoneNumber": {
                                      "type": "string",
                                      "maxLength": 30,
                                      "description": "Phone number of the user making the deposit",
                                      "examples": [
                                        "+447700900123",
                                        "+447700900456",
                                        "+447700900789"
                                      ]
                                    },
                                    "kycId": {
                                      "type": "string",
                                      "minLength": 1,
                                      "maxLength": 300,
                                      "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                      "examples": [
                                        "kyc-12345",
                                        "kyc-67890",
                                        "kyc-abcde"
                                      ]
                                    },
                                    "activity": {
                                      "type": "string",
                                      "description": "Activity of the user making the deposit",
                                      "examples": [
                                        "worker",
                                        "business",
                                        "student"
                                      ]
                                    }
                                  },
                                  "required": [
                                    "userType",
                                    "businessName",
                                    "firstName",
                                    "userEmail",
                                    "country"
                                  ]
                                }
                              ],
                              "description": "User data of the person/company making the deposit",
                              "examples": [
                                {
                                  "userType": "individual",
                                  "firstName": "John",
                                  "lastName": "Doe",
                                  "userEmail": "user@virtuabroker.com",
                                  "address": "123 Main St, Anytown, ES",
                                  "taxId": "123-45-6789",
                                  "country": "ES"
                                },
                                {
                                  "userType": "individual",
                                  "firstName": "Alice",
                                  "lastName": "Smith",
                                  "userEmail": "alice@example.com",
                                  "address": "456 Elm St, Anytown, ES",
                                  "taxId": "987-65-4321",
                                  "country": "ES"
                                }
                              ]
                            },
                            "createdAt": {
                              "type": "number",
                              "description": "Creation time of the deposit",
                              "examples": [
                                1723027132,
                                1723027133,
                                1723027134
                              ]
                            },
                            "rail": {
                              "type": "string",
                              "enum": [
                                "BALANCE",
                                "SEPA",
                                "BTC",
                                "ETH",
                                "MATIC",
                                "POLYGON",
                                "CELO",
                                "TRON",
                                "SOLANA",
                                "ARBITRUM",
                                "OPTIMISM",
                                "AVALANCHE",
                                "BSC",
                                "BASE",
                                "XRP",
                                "PIX_BR",
                                "UPI",
                                "IMPS",
                                "TRY_BANK_TRANSFER",
                                "AED_BANK_TRANSFER",
                                "SPEI",
                                "IDR_BANK_TRANSFER",
                                "CREDIT_CARD",
                                "THAI_QR",
                                "VIET_QR",
                                "GCASH",
                                "ARGENTINA_BANK_TRANSFER",
                                "PSE",
                                "CLABE",
                                "PIX",
                                "BANK_DEPOSIT_COL",
                                "BANK_DEPOSIT_AR",
                                "BANK_DEPOSIT_CL",
                                "BANK_DEPOSIT_PE",
                                "BANK_DEPOSIT_BO",
                                "BANK_DEPOSIT_BR",
                                "BANK_DEPOSIT_NG",
                                "BANK_DEPOSIT_KE",
                                "BANK_DEPOSIT_GH",
                                "BANK_DEPOSIT_ZA",
                                "BANK_DEPOSIT_TZ",
                                "BANK_DEPOSIT_UG",
                                "BANK_DEPOSIT_RW",
                                "BANK_DEPOSIT_MW",
                                "BANK_DEPOSIT_ZM",
                                "BANK_DEPOSIT_BW",
                                "BANK_DEPOSIT_CD",
                                "BANK_DEPOSIT_XOF",
                                "BANK_DEPOSIT_XAF",
                                "MOBILE_MONEY_NG",
                                "MOBILE_MONEY_KE",
                                "MOBILE_MONEY_GH",
                                "MOBILE_MONEY_ZA",
                                "MOBILE_MONEY_TZ",
                                "MOBILE_MONEY_UG",
                                "MOBILE_MONEY_RW",
                                "MOBILE_MONEY_MW",
                                "MOBILE_MONEY_ZM",
                                "MOBILE_MONEY_BW",
                                "MOBILE_MONEY_CD",
                                "MOBILE_MONEY_XOF",
                                "MOBILE_MONEY_XAF",
                                "ACH_US",
                                "GBP_BANK_TRANSFER"
                              ],
                              "description": "Rail of the deposit"
                            },
                            "receivedAt": {
                              "type": "number",
                              "description": "Unix ms timestamp of when the funds for this deposit ARRIVED — recorded when the incoming payment is matched to the deposit, which is before it is credited. Present whenever funds have arrived, including a deposit whose funds are still held in review; omitted entirely when no funds ever arrived, so a never-funded or cancelled deposit has no value here and its presence is a reliable settlement signal for reconciliation. Identical on GET /v1/deposits and GET /v1/deposits/{depositId}. Note that the deposit object embedded in order and operation responses does not yet apply this rule — it returns the stored value. Not the creation time — use createdAt for that.",
                              "examples": [
                                1723027132000,
                                1723027133000,
                                1723027134000
                              ]
                            },
                            "expectedAmount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Amount expected of the deposit",
                              "examples": [
                                1000,
                                2000,
                                3000
                              ]
                            },
                            "amount": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Amount received of the deposit",
                              "examples": [
                                1000,
                                2000,
                                3000
                              ]
                            },
                            "currency": {
                              "anyOf": [
                                {
                                  "type": "string",
                                  "enum": [
                                    "EUR",
                                    "USD",
                                    "GBP",
                                    "BRL",
                                    "MXN",
                                    "ARS",
                                    "COP",
                                    "PEN",
                                    "NGN",
                                    "KES",
                                    "TZS",
                                    "UGX",
                                    "RWF",
                                    "MWK",
                                    "ZMW",
                                    "XOF",
                                    "XAF",
                                    "BWP"
                                  ]
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "USDC",
                                    "USDT",
                                    "CUSD",
                                    "BTC",
                                    "ETH",
                                    "POL",
                                    "SOL",
                                    "TRX",
                                    "AVAX",
                                    "XRP",
                                    "BNB"
                                  ]
                                }
                              ],
                              "description": "Currency of the deposit",
                              "examples": [
                                "EUR",
                                "BRL"
                              ]
                            },
                            "fee": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Fee for the deposit. This value is written once the deposit has been executed. Meanwhile it will appear 0.",
                              "example": 10
                            },
                            "expectedFee": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Fee for the deposit. This value is correlated with the expected amount for the deposit.",
                              "examples": [
                                10,
                                20,
                                30
                              ]
                            },
                            "feeCurrency": {
                              "anyOf": [
                                {
                                  "type": "string",
                                  "enum": [
                                    "EUR",
                                    "USD",
                                    "GBP",
                                    "BRL",
                                    "MXN",
                                    "ARS",
                                    "COP",
                                    "PEN",
                                    "NGN",
                                    "KES",
                                    "TZS",
                                    "UGX",
                                    "RWF",
                                    "MWK",
                                    "ZMW",
                                    "XOF",
                                    "XAF",
                                    "BWP"
                                  ]
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "USDC",
                                    "USDT",
                                    "CUSD",
                                    "BTC",
                                    "ETH",
                                    "POL",
                                    "SOL",
                                    "TRX",
                                    "AVAX",
                                    "XRP",
                                    "BNB"
                                  ]
                                }
                              ],
                              "description": "Currency of the fee",
                              "examples": [
                                "EUR",
                                "BRL"
                              ]
                            },
                            "status": {
                              "anyOf": [
                                {
                                  "type": "string",
                                  "enum": [
                                    "Pending",
                                    "Processing",
                                    "Success",
                                    "Failed",
                                    "Canceled",
                                    "Reviewing"
                                  ],
                                  "description": "Common status values that are shared across all operation types",
                                  "examples": [
                                    "Pending",
                                    "Processing",
                                    "Success",
                                    "Failed",
                                    "Canceled",
                                    "Reviewing"
                                  ]
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "PendingCancel",
                                    "Received"
                                  ]
                                }
                              ],
                              "description": "Status of the deposit",
                              "examples": [
                                "Pending",
                                "Success",
                                "Failed",
                                "Received",
                                "PendingCancel"
                              ]
                            },
                            "depositInfo": {
                              "oneOf": [
                                {
                                  "type": "object",
                                  "properties": {
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Name of the account holder",
                                      "example": "John Doe"
                                    },
                                    "iban": {
                                      "type": "string",
                                      "description": "SEPA Bank Account Number",
                                      "example": "DE8937XXXXXXXXXXXX3000"
                                    },
                                    "bic": {
                                      "type": "string",
                                      "description": "Bank BIC/SWIFT code",
                                      "example": "DEUTDEFF"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Name of the bank",
                                      "example": "Deutsche Bank"
                                    },
                                    "bankAddress": {
                                      "type": "string",
                                      "description": "Address of the bank",
                                      "example": "Taunusanlage 12"
                                    },
                                    "bankCity": {
                                      "type": "string",
                                      "description": "City of the bank",
                                      "example": "Frankfurt am Main"
                                    },
                                    "bankZipcode": {
                                      "type": "string",
                                      "description": "Zipcode of the bank",
                                      "example": "60325"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "enum": [
                                        "US",
                                        "CA",
                                        "GB",
                                        "DE",
                                        "FR",
                                        "AU",
                                        "JP",
                                        "KR",
                                        "SE",
                                        "NO",
                                        "DK",
                                        "FI",
                                        "NL",
                                        "BE",
                                        "CH",
                                        "AT",
                                        "NZ",
                                        "SG",
                                        "IE",
                                        "LU",
                                        "PT",
                                        "ES",
                                        "IT",
                                        "GR",
                                        "CZ",
                                        "PL",
                                        "HU",
                                        "SK",
                                        "SI",
                                        "EE",
                                        "LT",
                                        "LV",
                                        "IS",
                                        "MT",
                                        "CY",
                                        "HR",
                                        "RO",
                                        "BG",
                                        "BR",
                                        "AR",
                                        "CL",
                                        "MX",
                                        "CO",
                                        "PE",
                                        "PA",
                                        "UY",
                                        "BO",
                                        "ZA",
                                        "NG",
                                        "KE",
                                        "GH",
                                        "TZ",
                                        "UG",
                                        "RW",
                                        "MW",
                                        "ZM",
                                        "BW",
                                        "CD",
                                        "CI",
                                        "CM",
                                        "IL",
                                        "AE",
                                        "QA",
                                        "SA",
                                        "OM",
                                        "KW",
                                        "BH",
                                        "MY",
                                        "PH",
                                        "TH",
                                        "VN",
                                        "ID",
                                        "IN",
                                        "LK",
                                        "NP",
                                        "BD",
                                        "PK",
                                        "EG",
                                        "MA",
                                        "DZ",
                                        "TN",
                                        "JO",
                                        "LB",
                                        "TR",
                                        "KH",
                                        "MM",
                                        "LA",
                                        "EN",
                                        "BT",
                                        "VE",
                                        "TW",
                                        "HK",
                                        "CN"
                                      ],
                                      "description": "Country of the bank",
                                      "example": "DE"
                                    },
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "SEPA"
                                      ]
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount. It can be 0 for open-amount bank transfers where the sender chooses the final amount from their bank.",
                                      "example": 1000
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "minLength": 1,
                                      "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order. The user must include this code when making the deposit to ensure accurate processing. In cases where the reference code is incorrect or missing, we manually match orders based on the sender's name and other available details. In case the deposit is not matched, we will mark the order as Reviewing and the system will require manual attention.",
                                      "example": "REF123456"
                                    },
                                    "extraDepositMethods": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "methodType": {
                                            "type": "string",
                                            "enum": [
                                              "HOSTED_CHECKOUT"
                                            ],
                                            "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                                          },
                                          "url": {
                                            "type": "string",
                                            "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                                            "example": "https://checkout.example.com/pay/abc123"
                                          },
                                          "callbackUrl": {
                                            "type": "string",
                                            "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                                          },
                                          "referenceCode": {
                                            "type": "string",
                                            "description": "Payment reference for this method (equals the deposit/order reference)"
                                          },
                                          "amount": {
                                            "type": "number",
                                            "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                                          },
                                          "currency": {
                                            "type": "string",
                                            "description": "Currency of this method"
                                          },
                                          "expiresAt": {
                                            "type": "number",
                                            "description": "Unix ms after which `url` is no longer valid, when known"
                                          }
                                        },
                                        "required": [
                                          "methodType",
                                          "url"
                                        ],
                                        "description": "An additional, optional way to pay this deposit"
                                      },
                                      "description": "Additional, optional ways to pay this same deposit (e.g. a hosted card page). The bank details above remain the primary method; ignore this field if you only support bank transfer."
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ],
                                  "description": "Detailed information about a bank deposit, including the amount and a unique reference code for identification."
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "address": {
                                      "type": "string",
                                      "minLength": 1,
                                      "description": "Crypto wallet address",
                                      "example": "0x1A2b3C4d5E6f7890AbCdEf1234567890AbCdEf12"
                                    },
                                    "network": {
                                      "type": "string",
                                      "enum": [
                                        "MATIC",
                                        "ETH",
                                        "CELO",
                                        "TRON",
                                        "BTC",
                                        "SOLANA",
                                        "XRP",
                                        "CARDANO",
                                        "BSC",
                                        "ARBITRUM",
                                        "OPTIMISM",
                                        "AVALANCHE",
                                        "BASE"
                                      ],
                                      "description": "Network for the deposit for crypto deposits",
                                      "examples": [
                                        "ETH",
                                        "MATIC",
                                        "CELO"
                                      ]
                                    },
                                    "memo": {
                                      "type": "string",
                                      "description": "Optional memo for the transaction",
                                      "example": "Payment for services"
                                    },
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "CRYPTO"
                                      ]
                                    },
                                    "qrCode": {
                                      "type": "string",
                                      "description": "Base64-encoded QR image for the deposit address",
                                      "example": "iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAIAAADTED8xAAABpklEQVR42u3BAQ0AAADCoPdPbQ8HFAAAAAAAAAAAAAAAAAA..."
                                    },
                                    "qrCodeUrl": {
                                      "type": "string",
                                      "format": "uri",
                                      "description": "7-day signed GCS URL of the QR code PNG"
                                    },
                                    "qrCodeExpiresAt": {
                                      "type": "number",
                                      "description": "Unix timestamp (ms) when qrCodeUrl expires"
                                    },
                                    "receivingAddress": {
                                      "type": "string",
                                      "description": "The wallet address where funds should be sent",
                                      "example": "0xAbCdEf0123456789AbCdEf0123456789AbCdEf01"
                                    },
                                    "tokenContract": {
                                      "type": "string",
                                      "description": "The ERC20 token contract address",
                                      "example": "0x765DE816845861e75A25fCA122bb6898B8B1282a"
                                    },
                                    "decimals": {
                                      "type": "number",
                                      "description": "Token decimals (default 18)",
                                      "example": 18
                                    }
                                  },
                                  "required": [
                                    "address",
                                    "network",
                                    "depositType"
                                  ],
                                  "description": "Crypto Deposit Information"
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "base64QRCode": {
                                      "type": "string",
                                      "minLength": 1,
                                      "description": "Base64 encoded QR code",
                                      "example": "base64QRCode"
                                    },
                                    "qrCodeString": {
                                      "type": "string",
                                      "minLength": 1,
                                      "description": "The Pix copy-and-paste code (BR Code payload) the payer pastes into their bank app. Pass it through unchanged — it carries its own checksum.",
                                      "example": "qrCodeString"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "minLength": 1,
                                      "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order",
                                      "example": "REF123456"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "exclusiveMinimum": true,
                                      "description": "The monetary value to be deposited into the bank. This amount should be positive and accurately reflect the intended deposit.",
                                      "example": 1000
                                    },
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "PIX"
                                      ]
                                    }
                                  },
                                  "required": [
                                    "base64QRCode",
                                    "qrCodeString",
                                    "referenceCode",
                                    "amount",
                                    "depositType"
                                  ],
                                  "description": "Pix Deposit Information"
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "CREDIT_CARD"
                                      ]
                                    }
                                  },
                                  "required": [
                                    "depositType"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "bankName": {
                                      "type": "string",
                                      "description": "Name of the bank (present when the rail provides it)"
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Name of the account holder (present when the rail provides it)"
                                    },
                                    "clabe": {
                                      "type": "string",
                                      "description": "CLABE number"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Bank account number (e.g. from the BANK_TRANSFER payment method)"
                                    },
                                    "reference": {
                                      "type": "string",
                                      "description": "Payment reference (e.g. from the BANK_TRANSFER payment method)"
                                    },
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "CLABE"
                                      ],
                                      "description": "Type of the deposit"
                                    }
                                  },
                                  "required": [
                                    "clabe",
                                    "depositType"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "url": {
                                      "type": "string",
                                      "description": "URL of the PSE payment"
                                    },
                                    "amountPrefilled": {
                                      "type": "boolean",
                                      "description": "Whether the payment page already carries the amount. When false or absent, the payer must enter it."
                                    },
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "PSE"
                                      ],
                                      "description": "Type of the deposit"
                                    }
                                  },
                                  "required": [
                                    "url",
                                    "depositType"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "BALANCE"
                                      ]
                                    }
                                  },
                                  "required": [
                                    "depositType"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "PENDING"
                                      ]
                                    },
                                    "currency": {
                                      "type": "string",
                                      "description": "Currency of the deposit"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the order/deposit"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount. It can be 0 while bank transfer details are open-amount or still being provisioned."
                                    },
                                    "extraDepositMethods": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "methodType": {
                                            "type": "string",
                                            "enum": [
                                              "HOSTED_CHECKOUT"
                                            ],
                                            "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                                          },
                                          "url": {
                                            "type": "string",
                                            "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                                            "example": "https://checkout.example.com/pay/abc123"
                                          },
                                          "callbackUrl": {
                                            "type": "string",
                                            "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                                          },
                                          "referenceCode": {
                                            "type": "string",
                                            "description": "Payment reference for this method (equals the deposit/order reference)"
                                          },
                                          "amount": {
                                            "type": "number",
                                            "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                                          },
                                          "currency": {
                                            "type": "string",
                                            "description": "Currency of this method"
                                          },
                                          "expiresAt": {
                                            "type": "number",
                                            "description": "Unix ms after which `url` is no longer valid, when known"
                                          }
                                        },
                                        "required": [
                                          "methodType",
                                          "url"
                                        ],
                                        "description": "An additional, optional way to pay this deposit"
                                      },
                                      "description": "Additional ways to pay while the bank details are being provisioned (e.g. a hosted card page). Optional — ignore it and wait for the bank details if you only support bank transfer."
                                    },
                                    "pendingReason": {
                                      "type": "string",
                                      "enum": [
                                        "collection_account_activating",
                                        "accountless_per_account_corridor"
                                      ],
                                      "description": "Why the instructions are still being provisioned, when the reason is known. `collection_account_activating` means the collection account for this payer is being activated and payable details are expected shortly. `accountless_per_account_corridor` means this corridor collects only into a collection account dedicated to the paying account, this request names no account, and none can be created for it — so payable details will NOT arrive by waiting; create the deposit against an account instead. Absence never conveys timing on either surface: here it means only that no reason is classifiable, and an account-level deposit-method instruction never carries the field at all. Treat the values as an open set and ignore any you do not recognise."
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "currency",
                                    "referenceCode",
                                    "amount"
                                  ],
                                  "description": "Deposit details are being provisioned; poll the order/deposit or wait for webhook"
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "IMPS"
                                      ]
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Name of the bank"
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Name of the account holder"
                                    },
                                    "ifsc": {
                                      "type": "string",
                                      "description": "ifsc number"
                                    },
                                    "type": {
                                      "type": "string",
                                      "description": "Type of the deposit"
                                    },
                                    "branch": {
                                      "type": "string",
                                      "description": "Branch of the bank"
                                    },
                                    "bank": {
                                      "type": "string",
                                      "description": "Bank of the account"
                                    },
                                    "otp": {
                                      "type": "string",
                                      "description": "OTP of the deposit"
                                    },
                                    "bankNotes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "number",
                                            "description": "Type of note: -1 for warning, 1 for info"
                                          },
                                          "msg": {
                                            "type": "string",
                                            "description": "Message content"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "msg"
                                        ]
                                      },
                                      "description": "Additional bank instructions"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "accountNumber",
                                    "bankName",
                                    "accountHolder",
                                    "ifsc",
                                    "type",
                                    "branch",
                                    "bank",
                                    "otp"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "UPI"
                                      ]
                                    },
                                    "vpa": {
                                      "type": "string",
                                      "description": "Virtual Payment Address"
                                    },
                                    "name": {
                                      "type": "string",
                                      "description": "Name of the account holder"
                                    },
                                    "otp": {
                                      "type": "string",
                                      "description": "OTP for the transaction"
                                    },
                                    "paymentLink": {
                                      "type": "string",
                                      "description": "Payment link"
                                    },
                                    "upiNotes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "number",
                                            "description": "Type of note: -1 for warning, 1 for info"
                                          },
                                          "msg": {
                                            "type": "string",
                                            "description": "Message content"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "msg"
                                        ]
                                      },
                                      "description": "Additional UPI instructions"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "vpa",
                                    "name",
                                    "otp",
                                    "paymentLink"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "AED_BANK_TRANSFER"
                                      ]
                                    },
                                    "iban": {
                                      "type": "string",
                                      "description": "International Bank Account Number"
                                    },
                                    "name": {
                                      "type": "string",
                                      "description": "Name of the account holder"
                                    },
                                    "bank": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "type": {
                                      "type": "string",
                                      "description": "Account type"
                                    },
                                    "address": {
                                      "type": "string",
                                      "description": "Bank address"
                                    },
                                    "email": {
                                      "type": "string",
                                      "description": "Contact email"
                                    },
                                    "phoneNumber": {
                                      "type": "string",
                                      "description": "Contact phone number"
                                    },
                                    "transferCode": {
                                      "type": "string",
                                      "description": "Transfer code"
                                    },
                                    "poBox": {
                                      "type": "string",
                                      "description": "P.O. Box"
                                    },
                                    "otp": {
                                      "type": "string",
                                      "description": "OTP for the transaction"
                                    },
                                    "bankNotes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "number",
                                            "description": "Type of note: -1 for warning, 1 for info"
                                          },
                                          "msg": {
                                            "type": "string",
                                            "description": "Message content"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "msg"
                                        ]
                                      },
                                      "description": "Additional bank instructions"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "iban",
                                    "name",
                                    "bank",
                                    "type",
                                    "address",
                                    "email",
                                    "phoneNumber",
                                    "transferCode",
                                    "poBox",
                                    "otp"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "SPEI"
                                      ]
                                    },
                                    "clabe": {
                                      "type": "string",
                                      "description": "CLABE number"
                                    },
                                    "name": {
                                      "type": "string",
                                      "description": "Name of the account holder"
                                    },
                                    "bank": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankNotes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "number",
                                            "description": "Type of note: -1 for warning, 1 for info"
                                          },
                                          "msg": {
                                            "type": "string",
                                            "description": "Message content"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "msg"
                                        ]
                                      },
                                      "description": "Additional bank instructions"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "clabe",
                                    "name",
                                    "bank"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "TRY_BANK_TRANSFER"
                                      ]
                                    },
                                    "iban": {
                                      "type": "string",
                                      "description": "International Bank Account Number"
                                    },
                                    "name": {
                                      "type": "string",
                                      "description": "Name of the account holder"
                                    },
                                    "bank": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "otp": {
                                      "type": "string",
                                      "description": "OTP for the transaction"
                                    },
                                    "bankNotes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "number",
                                            "description": "Type of note: -1 for warning, 1 for info"
                                          },
                                          "msg": {
                                            "type": "string",
                                            "description": "Message content"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "msg"
                                        ]
                                      },
                                      "description": "Additional bank instructions"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "iban",
                                    "name",
                                    "bank",
                                    "otp"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "IDR_BANK_TRANSFER"
                                      ]
                                    },
                                    "virtualAccount": {
                                      "type": "string",
                                      "description": "Virtual account number"
                                    },
                                    "name": {
                                      "type": "string",
                                      "description": "Name of the account holder"
                                    },
                                    "bank": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankNotes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "number",
                                            "description": "Type of note: -1 for warning, 1 for info"
                                          },
                                          "msg": {
                                            "type": "string",
                                            "description": "Message content"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "msg"
                                        ]
                                      },
                                      "description": "Additional bank instructions"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "virtualAccount",
                                    "name",
                                    "bank"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "THAI_QR"
                                      ]
                                    },
                                    "qrCode": {
                                      "type": "string",
                                      "description": "QR code"
                                    },
                                    "otp": {
                                      "type": "string",
                                      "description": "OTP for the transaction"
                                    },
                                    "bankNotes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "number",
                                            "description": "Type of note: -1 for warning, 1 for info"
                                          },
                                          "msg": {
                                            "type": "string",
                                            "description": "Message content"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "msg"
                                        ]
                                      },
                                      "description": "Additional bank instructions"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "qrCode",
                                    "otp"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "VIET_QR"
                                      ]
                                    },
                                    "qrCode": {
                                      "type": "string",
                                      "description": "QR code"
                                    },
                                    "otp": {
                                      "type": "string",
                                      "description": "OTP for the transaction"
                                    },
                                    "bankNotes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "number",
                                            "description": "Type of note: -1 for warning, 1 for info"
                                          },
                                          "msg": {
                                            "type": "string",
                                            "description": "Message content"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "msg"
                                        ]
                                      },
                                      "description": "Additional bank instructions"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "qrCode",
                                    "otp"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "GCASH"
                                      ]
                                    },
                                    "qrCode": {
                                      "type": "string",
                                      "description": "QR code"
                                    },
                                    "otp": {
                                      "type": "string",
                                      "description": "OTP for the transaction"
                                    },
                                    "bankNotes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "number",
                                            "description": "Type of note: -1 for warning, 1 for info"
                                          },
                                          "msg": {
                                            "type": "string",
                                            "description": "Message content"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "msg"
                                        ]
                                      },
                                      "description": "Additional bank instructions"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "qrCode",
                                    "otp"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "ARGENTINA_BANK_TRANSFER"
                                      ]
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Account number"
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "accountNumber"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "ACH_US"
                                      ]
                                    },
                                    "routingNumber": {
                                      "type": "string",
                                      "description": "US bank ABA routing number"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "US bank account number"
                                    },
                                    "beneficiaryName": {
                                      "type": "string",
                                      "description": "Beneficiary name on the account"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Name of the bank"
                                    },
                                    "bankAddress": {
                                      "type": "string",
                                      "description": "Address of the bank"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names (e.g. ACH, Wire)"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount in USD"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "minLength": 1,
                                      "description": "Reference code to include in the wire/ACH transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "routingNumber",
                                    "accountNumber",
                                    "beneficiaryName",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "ACH_PULL"
                                      ]
                                    }
                                  },
                                  "required": [
                                    "depositType"
                                  ],
                                  "description": "Funds are pulled from the holder's own linked US bank account; no transfer instructions apply"
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "LOCALBANK"
                                      ],
                                      "description": "Deprecated generic local-bank payin type. Superseded by the corridor-specific deposit types (e.g. SEPA, ACH_US, GBP_BANK_TRANSFER, CLABE/SPEI, PIX, ARGENTINA_BANK_TRANSFER, BANK_DEPOSIT_<CC>). Still returned on some corridors and on historical records, so integrators must continue to handle it. Discover the applicable per-currency method via GET /v1/currencies/{currency}/payin-schema.",
                                      "deprecated": true
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "GBP_BANK_TRANSFER"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "UK bank account number"
                                    },
                                    "sortCode": {
                                      "type": "string",
                                      "description": "UK sort code"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Name of the bank"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names (e.g. Faster Payments, CHAPS, BACS)"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount in GBP"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "minLength": 1,
                                      "description": "Reference code to include in the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "accountHolder",
                                    "accountNumber",
                                    "sortCode",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "BANK_DEPOSIT_COL"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "BANK_DEPOSIT_CL"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "BANK_DEPOSIT_BO"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "BANK_DEPOSIT_BR"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "BANK_DEPOSIT_NG"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "BANK_DEPOSIT_KE"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "BANK_DEPOSIT_GH"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "BANK_DEPOSIT_ZA"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "BANK_DEPOSIT_TZ"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "BANK_DEPOSIT_UG"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "BANK_DEPOSIT_RW"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "BANK_DEPOSIT_MW"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "BANK_DEPOSIT_ZM"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "BANK_DEPOSIT_BW"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "BANK_DEPOSIT_CD"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "BANK_DEPOSIT_XOF"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "BANK_DEPOSIT_XAF"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "MOBILE_MONEY_NG"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "MOBILE_MONEY_KE"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "MOBILE_MONEY_GH"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "MOBILE_MONEY_ZA"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "MOBILE_MONEY_TZ"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "MOBILE_MONEY_UG"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "MOBILE_MONEY_RW"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "MOBILE_MONEY_MW"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "MOBILE_MONEY_ZM"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "MOBILE_MONEY_BW"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "MOBILE_MONEY_CD"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "MOBILE_MONEY_XOF"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                },
                                {
                                  "type": "object",
                                  "properties": {
                                    "depositType": {
                                      "type": "string",
                                      "enum": [
                                        "MOBILE_MONEY_XAF"
                                      ]
                                    },
                                    "accountHolder": {
                                      "type": "string",
                                      "description": "Account holder name"
                                    },
                                    "accountNumber": {
                                      "type": "string",
                                      "description": "Local bank account number"
                                    },
                                    "bankName": {
                                      "type": "string",
                                      "description": "Bank name"
                                    },
                                    "bankCountry": {
                                      "type": "string",
                                      "description": "ISO-3166 country code"
                                    },
                                    "routingCodes": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "type": {
                                            "type": "string",
                                            "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                          },
                                          "value": {
                                            "type": "string",
                                            "description": "Routing code value"
                                          }
                                        },
                                        "required": [
                                          "type",
                                          "value"
                                        ]
                                      },
                                      "description": "Routing identifiers (e.g. sort code, routing number)"
                                    },
                                    "schemes": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted payment scheme names for this account"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "minimum": 0,
                                      "description": "Expected deposit amount"
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Reference code for the transfer"
                                    }
                                  },
                                  "required": [
                                    "depositType",
                                    "amount",
                                    "referenceCode"
                                  ]
                                }
                              ],
                              "description": "Details of the deposit",
                              "examples": [
                                {
                                  "accountHolder": "John Doe",
                                  "iban": "DE8937XXXXXXXXXXXX3000",
                                  "bic": "COBADEFFXXX",
                                  "bankName": "Commerzbank",
                                  "bankAddress": "Mainzer Landstrasse 151-153",
                                  "bankCity": "Frankfurt",
                                  "bankZipcode": "60327",
                                  "bankCountry": "DE",
                                  "amount": 1000,
                                  "referenceCode": "ABC123",
                                  "depositType": "SEPA"
                                }
                              ]
                            },
                            "depositInfoPending": {
                              "type": "boolean",
                              "description": "True while the payment instructions are still being prepared. Poll this deposit until it is false (or absent) before showing the instructions to the payer."
                            },
                            "complianceHold": {
                              "type": "object",
                              "properties": {
                                "reason": {
                                  "type": "string",
                                  "enum": [
                                    "screening",
                                    "fiat_monitoring"
                                  ],
                                  "description": "Compliance hold reason"
                                }
                              },
                              "required": [
                                "reason"
                              ],
                              "description": "Present while the inbound transfer funding this deposit is held in provider compliance review. The deposit stays Reviewing (amount 0, never credited) until the hold clears (promote to Received) or the transfer is rejected/returned (terminalize)."
                            }
                          },
                          "required": [
                            "depositId",
                            "createdAt",
                            "expectedAmount",
                            "amount",
                            "currency",
                            "fee",
                            "expectedFee",
                            "feeCurrency",
                            "status",
                            "depositInfo"
                          ],
                          "description": "Response schema for creating a deposit"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "transferId": {
                              "type": "string",
                              "description": "Linked transfer ID"
                            },
                            "message": {
                              "type": "string",
                              "description": "Success or error message"
                            }
                          }
                        }
                      ],
                      "description": "Response schema for creating a deposit"
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "409": {
            "description": "Conflict — the transfer cannot be used in its current state: it is under review by the VirtuaBroker team (for example, pending name verification) or already linked to another order or deposit. The error message explains the specific reason.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/pending-payments/trf_5Xy9Kd1p/create-deposit\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"externalReference\": \"partner-ref-0001\",\n      \"userData\": {\n        \"userType\": \"individual\",\n        \"firstName\": \"John\",\n        \"lastName\": \"Doe\",\n        \"userEmail\": \"user@virtuabroker.com\",\n        \"address\": \"123 Main St, Anytown, ES\",\n        \"taxDocumentType\": \"CC\",\n        \"taxId\": \"123-45-6789\",\n        \"country\": \"ES\",\n        \"state\": \"Madrid\",\n        \"postalCode\": \"12345\",\n        \"city\": \"Madrid\",\n        \"dob\": \"1990-01-01\",\n        \"phoneNumber\": \"+447700900123\",\n        \"kycId\": \"kyc-12345\",\n        \"activity\": \"worker\"\n      },\n      \"userDataId\": \"d290f1ee-6c54-4b01-90e6-d701748f0851\",\n      \"originCountry\": \"CI\",\n      \"originNetworkId\": \"3f9a1c7e-2b4d-4e8a-9c1f-0a1b2c3d4e5f\",\n      \"amount\": 100,\n      \"currency\": \"USDC\",\n      \"rail\": \"BTC\",\n      \"transferId\": \"12345\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api.virtuabroker.com/v1/pending-payments/trf_5Xy9Kd1p/create-deposit\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"externalReference\": \"partner-ref-0001\",\n        \"userData\": {\n            \"userType\": \"individual\",\n            \"firstName\": \"John\",\n            \"lastName\": \"Doe\",\n            \"userEmail\": \"user@virtuabroker.com\",\n            \"address\": \"123 Main St, Anytown, ES\",\n            \"taxDocumentType\": \"CC\",\n            \"taxId\": \"123-45-6789\",\n            \"country\": \"ES\",\n            \"state\": \"Madrid\",\n            \"postalCode\": \"12345\",\n            \"city\": \"Madrid\",\n            \"dob\": \"1990-01-01\",\n            \"phoneNumber\": \"+447700900123\",\n            \"kycId\": \"kyc-12345\",\n            \"activity\": \"worker\"\n        },\n        \"userDataId\": \"d290f1ee-6c54-4b01-90e6-d701748f0851\",\n        \"originCountry\": \"CI\",\n        \"originNetworkId\": \"3f9a1c7e-2b4d-4e8a-9c1f-0a1b2c3d4e5f\",\n        \"amount\": 100,\n        \"currency\": \"USDC\",\n        \"rail\": \"BTC\",\n        \"transferId\": \"12345\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api.virtuabroker.com/v1/pending-payments/trf_5Xy9Kd1p/create-deposit\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"externalReference\": \"partner-ref-0001\",\n  \"userData\": {\n    \"userType\": \"individual\",\n    \"firstName\": \"John\",\n    \"lastName\": \"Doe\",\n    \"userEmail\": \"user@virtuabroker.com\",\n    \"address\": \"123 Main St, Anytown, ES\",\n    \"taxDocumentType\": \"CC\",\n    \"taxId\": \"123-45-6789\",\n    \"country\": \"ES\",\n    \"state\": \"Madrid\",\n    \"postalCode\": \"12345\",\n    \"city\": \"Madrid\",\n    \"dob\": \"1990-01-01\",\n    \"phoneNumber\": \"+447700900123\",\n    \"kycId\": \"kyc-12345\",\n    \"activity\": \"worker\"\n  },\n  \"userDataId\": \"d290f1ee-6c54-4b01-90e6-d701748f0851\",\n  \"originCountry\": \"CI\",\n  \"originNetworkId\": \"3f9a1c7e-2b4d-4e8a-9c1f-0a1b2c3d4e5f\",\n  \"amount\": 100,\n  \"currency\": \"USDC\",\n  \"rail\": \"BTC\",\n  \"transferId\": \"12345\"\n}'"
          }
        ]
      }
    },
    "/v1/pending-payments/{transferId}/create-order": {
      "post": {
        "summary": "Create an order from a pending transfer",
        "description": "Creates a new order using an incoming transfer as the funding source. The transfer is automatically linked to the resulting order.",
        "tags": [
          "Pending Payments"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string"
            },
            "required": true,
            "name": "transferId",
            "in": "path"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "allOf": [
                  {
                    "type": "object",
                    "properties": {
                      "quoteId": {
                        "type": "string",
                        "format": "uuid",
                        "description": "The unique identifier of the created quote",
                        "examples": [
                          "123e4567-e89b-12d3-a456-426614174000",
                          "987f6543-a21c-45d6-b789-012345678901"
                        ]
                      },
                      "accountId": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Execute the order on behalf of this managed customer (the customerId from /v1/banking/customers). The customer becomes the order origin — the party whose balance/identity the movement belongs to. Must belong to your workspace; a foreign or unknown id is rejected.",
                        "examples": [
                          "jane.doe@example.com"
                        ]
                      },
                      "destination": {
                        "type": "object",
                        "properties": {
                          "contactId": {
                            "type": "string",
                            "minLength": 1,
                            "description": "A saved contact of the on-behalf-of customer — the party receiving the funds."
                          },
                          "contactEmail": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 254,
                            "format": "email",
                            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                            "description": "Email identifying the receiving party (alternative to contactId)."
                          },
                          "addressId": {
                            "type": "string",
                            "minLength": 1,
                            "description": "A saved destination method (payout address) of the on-behalf-of customer; its transfer details become the payout destination."
                          }
                        },
                        "additionalProperties": false,
                        "description": "Structured destination for on-behalf-of orders: pay out to a managed contact and/or one of the customer saved payout addresses. Requires accountId."
                      },
                      "originCountry": {
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 2,
                        "description": "Collection country (ISO-3166 alpha-2) for a multi-country payin currency (CFA zones). Must be a valid collection country for the origin currency; omitted ⇒ the default collection country is used.",
                        "examples": [
                          "CI",
                          "SN",
                          "CM"
                        ]
                      },
                      "userData": {
                        "oneOf": [
                          {
                            "type": "object",
                            "properties": {
                              "userType": {
                                "type": "string",
                                "enum": [
                                  "individual"
                                ]
                              },
                              "firstName": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 50,
                                "description": "First name of the user making the deposit (or representative for business)",
                                "examples": [
                                  "John",
                                  "Alice",
                                  "Bob"
                                ]
                              },
                              "lastName": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "Last name of the user making the deposit (or representative for business)",
                                "examples": [
                                  "Doe",
                                  "Smith",
                                  "Johnson"
                                ]
                              },
                              "userEmail": {
                                "type": "string",
                                "maxLength": 254,
                                "format": "email",
                                "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                "description": "Email of the user making the deposit",
                                "examples": [
                                  "user@virtuabroker.com",
                                  "john.doe@example.com",
                                  "alice@example.com"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "maxLength": 150,
                                "description": "Address of the user making the deposit",
                                "examples": [
                                  "123 Main St, Anytown, ES",
                                  "456 Elm St, Anytown, ES",
                                  "789 Oak St, Anytown, ES"
                                ]
                              },
                              "taxDocumentType": {
                                "type": "string",
                                "maxLength": 50,
                                "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                "examples": [
                                  "CC",
                                  "NIT",
                                  "CE",
                                  "NIF",
                                  "Other"
                                ]
                              },
                              "taxId": {
                                "type": "string",
                                "maxLength": 30,
                                "description": "Tax ID of the user making the deposit",
                                "examples": [
                                  "123-45-6789",
                                  "987-65-4321",
                                  "111-22-3333"
                                ]
                              },
                              "country": {
                                "type": "string",
                                "enum": [
                                  "US",
                                  "CA",
                                  "GB",
                                  "DE",
                                  "FR",
                                  "AU",
                                  "JP",
                                  "KR",
                                  "SE",
                                  "NO",
                                  "DK",
                                  "FI",
                                  "NL",
                                  "BE",
                                  "CH",
                                  "AT",
                                  "NZ",
                                  "SG",
                                  "IE",
                                  "LU",
                                  "PT",
                                  "ES",
                                  "IT",
                                  "GR",
                                  "CZ",
                                  "PL",
                                  "HU",
                                  "SK",
                                  "SI",
                                  "EE",
                                  "LT",
                                  "LV",
                                  "IS",
                                  "MT",
                                  "CY",
                                  "HR",
                                  "RO",
                                  "BG",
                                  "BR",
                                  "AR",
                                  "CL",
                                  "MX",
                                  "CO",
                                  "PE",
                                  "PA",
                                  "UY",
                                  "BO",
                                  "ZA",
                                  "NG",
                                  "KE",
                                  "GH",
                                  "TZ",
                                  "UG",
                                  "RW",
                                  "MW",
                                  "ZM",
                                  "BW",
                                  "CD",
                                  "CI",
                                  "CM",
                                  "IL",
                                  "AE",
                                  "QA",
                                  "SA",
                                  "OM",
                                  "KW",
                                  "BH",
                                  "MY",
                                  "PH",
                                  "TH",
                                  "VN",
                                  "ID",
                                  "IN",
                                  "LK",
                                  "NP",
                                  "BD",
                                  "PK",
                                  "EG",
                                  "MA",
                                  "DZ",
                                  "TN",
                                  "JO",
                                  "LB",
                                  "TR",
                                  "KH",
                                  "MM",
                                  "LA",
                                  "EN",
                                  "BT",
                                  "VE",
                                  "TW",
                                  "HK",
                                  "CN"
                                ],
                                "description": "Country code of the user making the deposit",
                                "examples": [
                                  "ES",
                                  "US",
                                  "GB"
                                ]
                              },
                              "state": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "State of the user making the deposit",
                                "examples": [
                                  "Madrid",
                                  "New York",
                                  "London"
                                ]
                              },
                              "postalCode": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 30,
                                "description": "Postal code of the user making the deposit",
                                "examples": [
                                  "12345",
                                  "67890",
                                  "abcde"
                                ]
                              },
                              "city": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "City of the user making the deposit",
                                "examples": [
                                  "Madrid",
                                  "New York",
                                  "London"
                                ]
                              },
                              "dob": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 30,
                                "description": "Date of birth of the user making the deposit",
                                "examples": [
                                  "1990-01-01",
                                  "1995-05-15",
                                  "1988-12-31"
                                ]
                              },
                              "phoneNumber": {
                                "type": "string",
                                "maxLength": 30,
                                "description": "Phone number of the user making the deposit",
                                "examples": [
                                  "+447700900123",
                                  "+447700900456",
                                  "+447700900789"
                                ]
                              },
                              "kycId": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 300,
                                "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                "examples": [
                                  "kyc-12345",
                                  "kyc-67890",
                                  "kyc-abcde"
                                ]
                              },
                              "activity": {
                                "type": "string",
                                "description": "Activity of the user making the deposit",
                                "examples": [
                                  "worker",
                                  "business",
                                  "student"
                                ]
                              }
                            },
                            "required": [
                              "userType",
                              "firstName",
                              "userEmail",
                              "country"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "userType": {
                                "type": "string",
                                "enum": [
                                  "business"
                                ]
                              },
                              "businessName": {
                                "type": "string",
                                "maxLength": 150,
                                "description": "Business name (required when userType is business)",
                                "examples": [
                                  "Acme Corp",
                                  "Tech Solutions Inc",
                                  "Global Services Ltd"
                                ]
                              },
                              "firstName": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 50,
                                "description": "First name of the user making the deposit (or representative for business)",
                                "examples": [
                                  "John",
                                  "Alice",
                                  "Bob"
                                ]
                              },
                              "userEmail": {
                                "type": "string",
                                "maxLength": 254,
                                "format": "email",
                                "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                "description": "Email of the user making the deposit",
                                "examples": [
                                  "user@virtuabroker.com",
                                  "john.doe@example.com",
                                  "alice@example.com"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "maxLength": 150,
                                "description": "Address of the user making the deposit",
                                "examples": [
                                  "123 Main St, Anytown, ES",
                                  "456 Elm St, Anytown, ES",
                                  "789 Oak St, Anytown, ES"
                                ]
                              },
                              "taxDocumentType": {
                                "type": "string",
                                "maxLength": 50,
                                "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                "examples": [
                                  "CC",
                                  "NIT",
                                  "CE",
                                  "NIF",
                                  "Other"
                                ]
                              },
                              "taxId": {
                                "type": "string",
                                "maxLength": 30,
                                "description": "Tax ID of the user making the deposit",
                                "examples": [
                                  "123-45-6789",
                                  "987-65-4321",
                                  "111-22-3333"
                                ]
                              },
                              "country": {
                                "type": "string",
                                "enum": [
                                  "US",
                                  "CA",
                                  "GB",
                                  "DE",
                                  "FR",
                                  "AU",
                                  "JP",
                                  "KR",
                                  "SE",
                                  "NO",
                                  "DK",
                                  "FI",
                                  "NL",
                                  "BE",
                                  "CH",
                                  "AT",
                                  "NZ",
                                  "SG",
                                  "IE",
                                  "LU",
                                  "PT",
                                  "ES",
                                  "IT",
                                  "GR",
                                  "CZ",
                                  "PL",
                                  "HU",
                                  "SK",
                                  "SI",
                                  "EE",
                                  "LT",
                                  "LV",
                                  "IS",
                                  "MT",
                                  "CY",
                                  "HR",
                                  "RO",
                                  "BG",
                                  "BR",
                                  "AR",
                                  "CL",
                                  "MX",
                                  "CO",
                                  "PE",
                                  "PA",
                                  "UY",
                                  "BO",
                                  "ZA",
                                  "NG",
                                  "KE",
                                  "GH",
                                  "TZ",
                                  "UG",
                                  "RW",
                                  "MW",
                                  "ZM",
                                  "BW",
                                  "CD",
                                  "CI",
                                  "CM",
                                  "IL",
                                  "AE",
                                  "QA",
                                  "SA",
                                  "OM",
                                  "KW",
                                  "BH",
                                  "MY",
                                  "PH",
                                  "TH",
                                  "VN",
                                  "ID",
                                  "IN",
                                  "LK",
                                  "NP",
                                  "BD",
                                  "PK",
                                  "EG",
                                  "MA",
                                  "DZ",
                                  "TN",
                                  "JO",
                                  "LB",
                                  "TR",
                                  "KH",
                                  "MM",
                                  "LA",
                                  "EN",
                                  "BT",
                                  "VE",
                                  "TW",
                                  "HK",
                                  "CN"
                                ],
                                "description": "Country code of the user making the deposit",
                                "examples": [
                                  "ES",
                                  "US",
                                  "GB"
                                ]
                              },
                              "state": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "State of the user making the deposit",
                                "examples": [
                                  "Madrid",
                                  "New York",
                                  "London"
                                ]
                              },
                              "postalCode": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 30,
                                "description": "Postal code of the user making the deposit",
                                "examples": [
                                  "12345",
                                  "67890",
                                  "abcde"
                                ]
                              },
                              "city": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "City of the user making the deposit",
                                "examples": [
                                  "Madrid",
                                  "New York",
                                  "London"
                                ]
                              },
                              "dob": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 30,
                                "description": "Date of birth of the user making the deposit",
                                "examples": [
                                  "1990-01-01",
                                  "1995-05-15",
                                  "1988-12-31"
                                ]
                              },
                              "phoneNumber": {
                                "type": "string",
                                "maxLength": 30,
                                "description": "Phone number of the user making the deposit",
                                "examples": [
                                  "+447700900123",
                                  "+447700900456",
                                  "+447700900789"
                                ]
                              },
                              "kycId": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 300,
                                "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                "examples": [
                                  "kyc-12345",
                                  "kyc-67890",
                                  "kyc-abcde"
                                ]
                              },
                              "activity": {
                                "type": "string",
                                "description": "Activity of the user making the deposit",
                                "examples": [
                                  "worker",
                                  "business",
                                  "student"
                                ]
                              }
                            },
                            "required": [
                              "userType",
                              "businessName",
                              "firstName",
                              "userEmail",
                              "country"
                            ]
                          }
                        ],
                        "description": "Required when the quote origin is not BALANCE (payer). If the payer email is new, include address, city, postalCode, state, country, firstName, lastName, taxId, kycId for deposit provisioning."
                      },
                      "destinationUserData": {
                        "oneOf": [
                          {
                            "type": "object",
                            "properties": {
                              "userType": {
                                "type": "string",
                                "enum": [
                                  "individual"
                                ]
                              },
                              "firstName": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 50,
                                "description": "First name of the user making the deposit (or representative for business)",
                                "examples": [
                                  "John",
                                  "Alice",
                                  "Bob"
                                ]
                              },
                              "lastName": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "Last name of the user making the deposit (or representative for business)",
                                "examples": [
                                  "Doe",
                                  "Smith",
                                  "Johnson"
                                ]
                              },
                              "userEmail": {
                                "type": "string",
                                "maxLength": 254,
                                "format": "email",
                                "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                "description": "Email of the user making the deposit",
                                "examples": [
                                  "user@virtuabroker.com",
                                  "john.doe@example.com",
                                  "alice@example.com"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "maxLength": 150,
                                "description": "Address of the user making the deposit",
                                "examples": [
                                  "123 Main St, Anytown, ES",
                                  "456 Elm St, Anytown, ES",
                                  "789 Oak St, Anytown, ES"
                                ]
                              },
                              "taxDocumentType": {
                                "type": "string",
                                "maxLength": 50,
                                "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                "examples": [
                                  "CC",
                                  "NIT",
                                  "CE",
                                  "NIF",
                                  "Other"
                                ]
                              },
                              "taxId": {
                                "type": "string",
                                "maxLength": 30,
                                "description": "Tax ID of the user making the deposit",
                                "examples": [
                                  "123-45-6789",
                                  "987-65-4321",
                                  "111-22-3333"
                                ]
                              },
                              "country": {
                                "type": "string",
                                "enum": [
                                  "US",
                                  "CA",
                                  "GB",
                                  "DE",
                                  "FR",
                                  "AU",
                                  "JP",
                                  "KR",
                                  "SE",
                                  "NO",
                                  "DK",
                                  "FI",
                                  "NL",
                                  "BE",
                                  "CH",
                                  "AT",
                                  "NZ",
                                  "SG",
                                  "IE",
                                  "LU",
                                  "PT",
                                  "ES",
                                  "IT",
                                  "GR",
                                  "CZ",
                                  "PL",
                                  "HU",
                                  "SK",
                                  "SI",
                                  "EE",
                                  "LT",
                                  "LV",
                                  "IS",
                                  "MT",
                                  "CY",
                                  "HR",
                                  "RO",
                                  "BG",
                                  "BR",
                                  "AR",
                                  "CL",
                                  "MX",
                                  "CO",
                                  "PE",
                                  "PA",
                                  "UY",
                                  "BO",
                                  "ZA",
                                  "NG",
                                  "KE",
                                  "GH",
                                  "TZ",
                                  "UG",
                                  "RW",
                                  "MW",
                                  "ZM",
                                  "BW",
                                  "CD",
                                  "CI",
                                  "CM",
                                  "IL",
                                  "AE",
                                  "QA",
                                  "SA",
                                  "OM",
                                  "KW",
                                  "BH",
                                  "MY",
                                  "PH",
                                  "TH",
                                  "VN",
                                  "ID",
                                  "IN",
                                  "LK",
                                  "NP",
                                  "BD",
                                  "PK",
                                  "EG",
                                  "MA",
                                  "DZ",
                                  "TN",
                                  "JO",
                                  "LB",
                                  "TR",
                                  "KH",
                                  "MM",
                                  "LA",
                                  "EN",
                                  "BT",
                                  "VE",
                                  "TW",
                                  "HK",
                                  "CN"
                                ],
                                "description": "Country code of the user making the deposit",
                                "examples": [
                                  "ES",
                                  "US",
                                  "GB"
                                ]
                              },
                              "state": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "State of the user making the deposit",
                                "examples": [
                                  "Madrid",
                                  "New York",
                                  "London"
                                ]
                              },
                              "postalCode": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 30,
                                "description": "Postal code of the user making the deposit",
                                "examples": [
                                  "12345",
                                  "67890",
                                  "abcde"
                                ]
                              },
                              "city": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "City of the user making the deposit",
                                "examples": [
                                  "Madrid",
                                  "New York",
                                  "London"
                                ]
                              },
                              "dob": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 30,
                                "description": "Date of birth of the user making the deposit",
                                "examples": [
                                  "1990-01-01",
                                  "1995-05-15",
                                  "1988-12-31"
                                ]
                              },
                              "phoneNumber": {
                                "type": "string",
                                "maxLength": 30,
                                "description": "Phone number of the user making the deposit",
                                "examples": [
                                  "+447700900123",
                                  "+447700900456",
                                  "+447700900789"
                                ]
                              },
                              "kycId": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 300,
                                "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                "examples": [
                                  "kyc-12345",
                                  "kyc-67890",
                                  "kyc-abcde"
                                ]
                              },
                              "activity": {
                                "type": "string",
                                "description": "Activity of the user making the deposit",
                                "examples": [
                                  "worker",
                                  "business",
                                  "student"
                                ]
                              }
                            },
                            "required": [
                              "userType",
                              "firstName",
                              "userEmail",
                              "country"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "userType": {
                                "type": "string",
                                "enum": [
                                  "business"
                                ]
                              },
                              "businessName": {
                                "type": "string",
                                "maxLength": 150,
                                "description": "Business name (required when userType is business)",
                                "examples": [
                                  "Acme Corp",
                                  "Tech Solutions Inc",
                                  "Global Services Ltd"
                                ]
                              },
                              "firstName": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 50,
                                "description": "First name of the user making the deposit (or representative for business)",
                                "examples": [
                                  "John",
                                  "Alice",
                                  "Bob"
                                ]
                              },
                              "userEmail": {
                                "type": "string",
                                "maxLength": 254,
                                "format": "email",
                                "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                "description": "Email of the user making the deposit",
                                "examples": [
                                  "user@virtuabroker.com",
                                  "john.doe@example.com",
                                  "alice@example.com"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "maxLength": 150,
                                "description": "Address of the user making the deposit",
                                "examples": [
                                  "123 Main St, Anytown, ES",
                                  "456 Elm St, Anytown, ES",
                                  "789 Oak St, Anytown, ES"
                                ]
                              },
                              "taxDocumentType": {
                                "type": "string",
                                "maxLength": 50,
                                "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                "examples": [
                                  "CC",
                                  "NIT",
                                  "CE",
                                  "NIF",
                                  "Other"
                                ]
                              },
                              "taxId": {
                                "type": "string",
                                "maxLength": 30,
                                "description": "Tax ID of the user making the deposit",
                                "examples": [
                                  "123-45-6789",
                                  "987-65-4321",
                                  "111-22-3333"
                                ]
                              },
                              "country": {
                                "type": "string",
                                "enum": [
                                  "US",
                                  "CA",
                                  "GB",
                                  "DE",
                                  "FR",
                                  "AU",
                                  "JP",
                                  "KR",
                                  "SE",
                                  "NO",
                                  "DK",
                                  "FI",
                                  "NL",
                                  "BE",
                                  "CH",
                                  "AT",
                                  "NZ",
                                  "SG",
                                  "IE",
                                  "LU",
                                  "PT",
                                  "ES",
                                  "IT",
                                  "GR",
                                  "CZ",
                                  "PL",
                                  "HU",
                                  "SK",
                                  "SI",
                                  "EE",
                                  "LT",
                                  "LV",
                                  "IS",
                                  "MT",
                                  "CY",
                                  "HR",
                                  "RO",
                                  "BG",
                                  "BR",
                                  "AR",
                                  "CL",
                                  "MX",
                                  "CO",
                                  "PE",
                                  "PA",
                                  "UY",
                                  "BO",
                                  "ZA",
                                  "NG",
                                  "KE",
                                  "GH",
                                  "TZ",
                                  "UG",
                                  "RW",
                                  "MW",
                                  "ZM",
                                  "BW",
                                  "CD",
                                  "CI",
                                  "CM",
                                  "IL",
                                  "AE",
                                  "QA",
                                  "SA",
                                  "OM",
                                  "KW",
                                  "BH",
                                  "MY",
                                  "PH",
                                  "TH",
                                  "VN",
                                  "ID",
                                  "IN",
                                  "LK",
                                  "NP",
                                  "BD",
                                  "PK",
                                  "EG",
                                  "MA",
                                  "DZ",
                                  "TN",
                                  "JO",
                                  "LB",
                                  "TR",
                                  "KH",
                                  "MM",
                                  "LA",
                                  "EN",
                                  "BT",
                                  "VE",
                                  "TW",
                                  "HK",
                                  "CN"
                                ],
                                "description": "Country code of the user making the deposit",
                                "examples": [
                                  "ES",
                                  "US",
                                  "GB"
                                ]
                              },
                              "state": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "State of the user making the deposit",
                                "examples": [
                                  "Madrid",
                                  "New York",
                                  "London"
                                ]
                              },
                              "postalCode": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 30,
                                "description": "Postal code of the user making the deposit",
                                "examples": [
                                  "12345",
                                  "67890",
                                  "abcde"
                                ]
                              },
                              "city": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 100,
                                "description": "City of the user making the deposit",
                                "examples": [
                                  "Madrid",
                                  "New York",
                                  "London"
                                ]
                              },
                              "dob": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 30,
                                "description": "Date of birth of the user making the deposit",
                                "examples": [
                                  "1990-01-01",
                                  "1995-05-15",
                                  "1988-12-31"
                                ]
                              },
                              "phoneNumber": {
                                "type": "string",
                                "maxLength": 30,
                                "description": "Phone number of the user making the deposit",
                                "examples": [
                                  "+447700900123",
                                  "+447700900456",
                                  "+447700900789"
                                ]
                              },
                              "kycId": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 300,
                                "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                "examples": [
                                  "kyc-12345",
                                  "kyc-67890",
                                  "kyc-abcde"
                                ]
                              },
                              "activity": {
                                "type": "string",
                                "description": "Activity of the user making the deposit",
                                "examples": [
                                  "worker",
                                  "business",
                                  "student"
                                ]
                              }
                            },
                            "required": [
                              "userType",
                              "businessName",
                              "firstName",
                              "userEmail",
                              "country"
                            ]
                          }
                        ],
                        "description": "User data of the person/company that will receive the funds"
                      },
                      "destinationTransferData": {
                        "oneOf": [
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BALANCE"
                                ]
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "Balance transfer details",
                            "title": "Balance"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "iban": {
                                "type": "string",
                                "description": "IBAN number"
                              },
                              "bic": {
                                "type": "string",
                                "description": "BIC number (optional)"
                              },
                              "country": {
                                "type": "string",
                                "description": "Country code"
                              },
                              "accountType": {
                                "type": "string",
                                "enum": [
                                  "PERSONAL",
                                  "BUSINESS"
                                ],
                                "default": "PERSONAL",
                                "description": "Account type (optional)"
                              },
                              "city": {
                                "type": "string",
                                "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                              },
                              "postalCode": {
                                "type": "string",
                                "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                              },
                              "address": {
                                "type": "string",
                                "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "SEPA"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "iban",
                              "country",
                              "type"
                            ],
                            "description": "SEPA transfer details",
                            "title": "SEPA"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "UK bank account number"
                              },
                              "sortCode": {
                                "type": "string",
                                "description": "UK sort code"
                              },
                              "country": {
                                "type": "string",
                                "enum": [
                                  "GB"
                                ],
                                "default": "GB",
                                "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                              },
                              "accountType": {
                                "type": "string",
                                "enum": [
                                  "PERSONAL",
                                  "BUSINESS"
                                ],
                                "default": "PERSONAL",
                                "description": "Account type (optional)"
                              },
                              "city": {
                                "type": "string",
                                "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                              },
                              "postalCode": {
                                "type": "string",
                                "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                              },
                              "address": {
                                "type": "string",
                                "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "GBP_BANK_TRANSFER"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "accountNumber",
                              "sortCode",
                              "type"
                            ],
                            "description": "GBP domestic bank transfer details",
                            "title": "BankDepositGB"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "US bank account number"
                              },
                              "routingNumber": {
                                "type": "string",
                                "description": "US ABA routing number"
                              },
                              "country": {
                                "type": "string",
                                "enum": [
                                  "US"
                                ],
                                "default": "US",
                                "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                              },
                              "accountType": {
                                "type": "string",
                                "enum": [
                                  "PERSONAL",
                                  "BUSINESS"
                                ],
                                "default": "PERSONAL",
                                "description": "Account type (optional)"
                              },
                              "bankAccountType": {
                                "type": "string",
                                "enum": [
                                  "CHECKING",
                                  "SAVINGS"
                                ],
                                "default": "CHECKING",
                                "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                              },
                              "city": {
                                "type": "string",
                                "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                              },
                              "postalCode": {
                                "type": "string",
                                "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                              },
                              "state": {
                                "type": "string",
                                "pattern": "^[A-Z]{2}$",
                                "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                              },
                              "address": {
                                "type": "string",
                                "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "ACH_US"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "accountNumber",
                              "routingNumber",
                              "state",
                              "type"
                            ],
                            "description": "USD ACH transfer details",
                            "title": "AchUS"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "linkedBankAccount"
                                ]
                              },
                              "accountLinkId": {
                                "type": "string",
                                "pattern": "^alnk_[0-9a-f]{24}$",
                                "description": "Identifier of one of the account holder own linked bank accounts",
                                "examples": [
                                  "alnk_0123456789abcdef01234567"
                                ]
                              }
                            },
                            "required": [
                              "type",
                              "accountLinkId"
                            ],
                            "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                            "title": "LinkedBankAccount",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "ETH"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "ETH destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "ETH"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MATIC"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "MATIC destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "MATIC"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "SOL"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "SOL destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "SOL"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "TRON"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "TRON destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "TRON"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "CELO"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "CELO destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "CELO"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BTC"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "BTC destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "BTC"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "SOLANA"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "SOLANA destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "SOLANA"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "XRP"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "XRP destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "XRP"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "CARDANO"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "CARDANO destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "\\S"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "\\S"
                                  }
                                }
                              }
                            ],
                            "title": "CARDANO"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BSC"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "BSC destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "BSC"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "ARBITRUM"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "ARBITRUM destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "ARBITRUM"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "OPTIMISM"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "OPTIMISM destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "OPTIMISM"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "AVALANCHE"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "AVALANCHE destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "AVALANCHE"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BASE"
                                ]
                              },
                              "address": {
                                "type": "string",
                                "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                              },
                              "memo": {
                                "type": "string",
                                "description": "Memo for the wallet, when the chain uses one"
                              },
                              "txId": {
                                "type": "string",
                                "description": "Blockchain transaction ID"
                              },
                              "txUrlScan": {
                                "type": "string",
                                "description": "Blockchain explorer URL for the transaction"
                              },
                              "destinationWalletAddress": {
                                "type": "string",
                                "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                              },
                              "destinationWalletMemo": {
                                "type": "string",
                                "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                              },
                              "destinationNetwork": {
                                "type": "string",
                                "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                              },
                              "destinationCurrencySymbol": {
                                "type": "string",
                                "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                              }
                            },
                            "required": [
                              "type"
                            ],
                            "description": "BASE destination details",
                            "anyOf": [
                              {
                                "required": [
                                  "address"
                                ],
                                "properties": {
                                  "address": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              },
                              {
                                "required": [
                                  "destinationWalletAddress"
                                ],
                                "properties": {
                                  "destinationWalletAddress": {
                                    "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                  }
                                }
                              }
                            ],
                            "title": "BASE"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_COL"
                                ]
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name)."
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "description": "Bank account type — CORRIENTE or AHORRO."
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Recipient ID document number."
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "description": "Recipient ID document type — CC, CE, NIT, TI or PP."
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type",
                              "destinationBankCode",
                              "destinationBankAccountType",
                              "destinationDocumentType",
                              "destinationTaxId"
                            ],
                            "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                            "title": "Bank Deposit COL"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "brebKey": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Bre-B key (llave) that identifies the recipient account"
                              },
                              "email": {
                                "type": "string",
                                "description": "Recipient email (optional contact for the Bre-B rail)"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Recipient phone number (optional contact for the Bre-B rail)"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BRE_B_COP"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "brebKey",
                              "type"
                            ],
                            "description": "Colombian Bre-B payout details",
                            "title": "Bre-B COP"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "pattern": "^\\d{4}$",
                                "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                              },
                              "destinationBankAccountNumber": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Recipient bank account number"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Recipient ID document number"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "ACH_COP"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankCode",
                              "destinationBankAccountNumber",
                              "destinationBankAccountType",
                              "destinationDocumentType",
                              "destinationTaxId",
                              "type"
                            ],
                            "description": "Colombian ACH payout details",
                            "title": "ACH COP"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (unused for TWD — no network discovery)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "minLength": 2,
                                "description": "Bank name (required — TWD payouts run over SWIFT)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_TW"
                                ]
                              },
                              "destinationBankBranch": {
                                "type": "string",
                                "minLength": 2,
                                "description": "Bank branch (required — TWD payouts run over SWIFT)"
                              },
                              "bic": {
                                "type": "string",
                                "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                                "description": "SWIFT BIC code (required for TWD payouts)"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "description": "Type of bank account (legacy, optional)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Tax ID of the recipient (legacy, optional)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "description": "Document type of the recipient (legacy, optional)"
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "destinationBankName",
                              "type",
                              "destinationBankBranch",
                              "bic"
                            ],
                            "description": "Taiwan bank deposit details (SWIFT payout)",
                            "title": "Bank Deposit TW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "description": "Bank code"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationBankBranch": {
                                "type": "string",
                                "description": "Bank branch"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Tax ID of the recipient"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_BR"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankCode",
                              "destinationBankAccount",
                              "destinationBankBranch",
                              "destinationTaxId",
                              "type"
                            ],
                            "description": "Brazilian bank deposit details",
                            "title": "Bank Deposit BR"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPixCode": {
                                "type": "string",
                                "description": "PIX code"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Tax ID of the recipient"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "PIX_BR"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPixCode",
                              "destinationTaxId",
                              "type"
                            ],
                            "description": "Brazilian PIX details",
                            "title": "PIX BR"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccountNumber": {
                                "type": "string",
                                "description": "Bank account number"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Name of the bank"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                                "description": "Tax ID of the recipient"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "description": "Type of bank account"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_VEN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccountNumber",
                              "destinationBankName",
                              "destinationTaxId",
                              "destinationBankAccountType",
                              "type"
                            ],
                            "description": "Venezuelan bank deposit details",
                            "title": "Bank Deposit VEN"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "description": "Bank code"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                                "description": "Tax ID of the recipient"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "description": "Type of bank account"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "PHONE_DEPOSIT_VEN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankCode",
                              "destinationPhoneNumber",
                              "destinationTaxId",
                              "destinationBankAccountType",
                              "type"
                            ],
                            "description": "Venezuelan phone deposit details",
                            "title": "Phone Deposit VEN"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationIFSC": {
                                "type": "string",
                                "description": "IFSC code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_IN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Bank Deposit IN",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationIFSC": {
                                "type": "string",
                                "description": "IFSC code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "IMPS"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "IMPS",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationIFSC": {
                                "type": "string",
                                "description": "IFSC code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "THAI_QR"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Thai QR",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationIFSC": {
                                "type": "string",
                                "description": "IFSC code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "VIET_QR"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Viet QR",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationIFSC": {
                                "type": "string",
                                "description": "IFSC code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "GCASH"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "GCash",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Tax ID"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_PAYMENT_IN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "destinationTaxId",
                              "type"
                            ],
                            "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Mobile Payment IN",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "description": "Bank code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_VN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "destinationBankCode",
                              "type"
                            ],
                            "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Bank Deposit VN",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "bic": {
                                "type": "string",
                                "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "destinationAddress": {
                                "type": "string",
                                "description": "Address line 1 of the recipient"
                              },
                              "destinationCity": {
                                "type": "string",
                                "description": "Recipient city (defaults to Hong Kong)"
                              },
                              "accountHolderName": {
                                "type": "string",
                                "description": "Bank account holder name if different from payee"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_HK"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "bic",
                              "destinationBankName",
                              "destinationAddress",
                              "type"
                            ],
                            "description": "Hong Kong bank deposit details (HKD bank corridor)",
                            "title": "Bank Deposit HK"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "pattern": "^\\d+$",
                                "description": "CNAPS / bank institution code (numeric, variable length)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "destinationAddress": {
                                "type": "string",
                                "description": "Address line 1 of the recipient"
                              },
                              "destinationCity": {
                                "type": "string",
                                "description": "Recipient city"
                              },
                              "destinationState": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                              },
                              "destinationPostcode": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                              },
                              "destinationPhone": {
                                "type": "string",
                                "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                              },
                              "accountHolderName": {
                                "type": "string",
                                "description": "Bank account holder name if different from payee"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_CN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "destinationBankCode",
                              "destinationBankName",
                              "destinationAddress",
                              "destinationCity",
                              "destinationState",
                              "destinationPostcode",
                              "type"
                            ],
                            "description": "China mainland bank deposit details (CNY bank corridor)",
                            "title": "Bank Deposit CN"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_AR"
                                ]
                              },
                              "destinationCBU": {
                                "type": "string",
                                "description": "CBU — 22-digit bank account key (legacy, optional)"
                              },
                              "destinationCVU": {
                                "type": "string",
                                "description": "CVU — 22-digit virtual account key (legacy, optional)"
                              },
                              "destinationAlias": {
                                "type": "string",
                                "description": "Account alias (legacy, optional)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "description": "Document type of the recipient (legacy, optional)"
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type",
                              "destinationTaxId"
                            ],
                            "description": "Argentinian bank deposit details",
                            "title": "Bank Deposit AR"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Recipient bank name (required for Chilean bank payouts)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_CL"
                                ]
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "minLength": 1,
                                "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "description": "Document type of the recipient (legacy, optional)"
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "destinationBankName",
                              "type",
                              "destinationBankAccountType",
                              "destinationTaxId"
                            ],
                            "description": "Chilean bank deposit details",
                            "title": "Bank Deposit CL"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "minLength": 2,
                                "maxLength": 30,
                                "description": "Recipient name (required, 2–30 characters)"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 11,
                                "description": "Bank account number (max 11 digits for Bolivian accounts)"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (unused for BOB — no network discovery)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "maxLength": 20,
                                "description": "Bank name (optional, max 20 characters)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_BO"
                                ]
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 15,
                                "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type",
                              "destinationTaxId"
                            ],
                            "description": "Bolivian bank deposit details",
                            "title": "Bank Deposit BO"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_PE"
                                ]
                              },
                              "destinationCCI": {
                                "type": "string",
                                "description": "CCI — 20-digit interbank account code (legacy, optional)"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "description": "Account type (corriente/ahorro) (legacy, optional)"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "description": "Document type of the recipient (legacy, optional)"
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "destinationNetworkId",
                              "type"
                            ],
                            "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Bank Deposit PE",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "pattern": "^\\d{3}$",
                                "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                              },
                              "destinationBankAccountNumber": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 20,
                                "description": "Recipient bank account number (max 20)"
                              },
                              "destinationBankAccountType": {
                                "type": "string",
                                "enum": [
                                  "CORRIENTE",
                                  "AHORROS",
                                  "PHONE"
                                ],
                                "description": "Bank account type"
                              },
                              "destinationCCI": {
                                "type": "string",
                                "pattern": "^\\d{1,20}$",
                                "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                              },
                              "destinationDocumentType": {
                                "type": "string",
                                "enum": [
                                  "CC",
                                  "CE",
                                  "RUC",
                                  "PAS",
                                  "PAR",
                                  "LMI",
                                  "OTHER"
                                ],
                                "description": "Recipient identification type"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 50,
                                "description": "Recipient identification number (max 50)"
                              },
                              "email": {
                                "type": "string",
                                "pattern": "^.+@.+\\..+$",
                                "description": "Recipient email (required for PEN payouts)"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "pattern": "^\\d{1,9}$",
                                "description": "Recipient phone number (required, max 9 digits)"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_PEN"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankCode",
                              "destinationBankAccountNumber",
                              "destinationBankAccountType",
                              "destinationCCI",
                              "destinationDocumentType",
                              "destinationTaxId",
                              "email",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Peruvian bank deposit details (bank-code payout corridor).",
                            "title": "Bank Deposit PEN"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_NG"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Nigeria bank deposit details",
                            "title": "Bank Deposit NG"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_KE"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Kenya bank deposit details",
                            "title": "Bank Deposit KE"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_GH"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Bank Deposit GH",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_ZA"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "South Africa bank deposit details",
                            "title": "Bank Deposit ZA"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_TZ"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Tanzania bank deposit details",
                            "title": "Bank Deposit TZ"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_UG"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Uganda bank deposit details",
                            "title": "Bank Deposit UG"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_RW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Rwanda bank deposit details",
                            "title": "Bank Deposit RW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_MW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Malawi bank deposit details",
                            "title": "Bank Deposit MW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_ZM"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Zambia bank deposit details",
                            "title": "Bank Deposit ZM"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_BW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Botswana bank deposit details",
                            "title": "Bank Deposit BW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_CD"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Bank Deposit CD",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_XOF"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "West African CFA bank deposit details",
                            "title": "Bank Deposit XOF"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankAccount": {
                                "type": "string",
                                "description": "Bank account"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationBankName is given)"
                              },
                              "destinationBankName": {
                                "type": "string",
                                "description": "Bank name (used to resolve the network when id is omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_XAF"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccount",
                              "type"
                            ],
                            "description": "Central African CFA bank deposit details",
                            "title": "Bank Deposit XAF"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_NG"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Nigeria mobile money details",
                            "title": "Mobile Money NG"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_KE"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Kenya mobile money details",
                            "title": "Mobile Money KE"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_GH"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Mobile Money GH",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_ZA"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "South Africa mobile money details",
                            "title": "Mobile Money ZA"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_TZ"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Tanzania mobile money details",
                            "title": "Mobile Money TZ"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_UG"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Uganda mobile money details",
                            "title": "Mobile Money UG"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_RW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Rwanda mobile money details",
                            "title": "Mobile Money RW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_MW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Malawi mobile money details",
                            "title": "Mobile Money MW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_ZM"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Zambia mobile money details",
                            "title": "Mobile Money ZM"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_BW"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Botswana mobile money details",
                            "title": "Mobile Money BW"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_CD"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "Mobile Money CD",
                            "deprecated": true
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_XOF"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "West African CFA mobile money details",
                            "title": "Mobile Money XOF"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPhoneNumber": {
                                "type": "string",
                                "description": "Phone number"
                              },
                              "destinationNetworkId": {
                                "type": "string",
                                "description": "Payout network id (optional if destinationNetworkName is given)"
                              },
                              "destinationNetworkName": {
                                "type": "string",
                                "description": "Mobile money network name (resolves the network when id omitted)"
                              },
                              "country": {
                                "type": "string",
                                "description": "ISO 3166 country code"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_XAF"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPhoneNumber",
                              "type"
                            ],
                            "description": "Central African CFA mobile money details",
                            "title": "Mobile Money XAF"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationBankCode": {
                                "type": "string",
                                "description": "Bank code"
                              },
                              "destinationBankAccountNumber": {
                                "type": "string",
                                "description": "Bank account number (18-digit CLABE)"
                              },
                              "numericReference": {
                                "type": "string",
                                "description": "Numeric reference"
                              },
                              "notesReference": {
                                "type": "string",
                                "description": "Notes reference"
                              },
                              "destinationClabe": {
                                "type": "string",
                                "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                              },
                              "destinationTaxId": {
                                "type": "string",
                                "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_MX"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationBankAccountNumber",
                              "type"
                            ],
                            "description": "Mexican bank deposit details",
                            "title": "Bank Deposit MX"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "destinationName": {
                                "type": "string",
                                "description": "Name of the recipient"
                              },
                              "destinationPseNumber": {
                                "type": "string",
                                "description": "PSE number"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "PSE"
                                ]
                              }
                            },
                            "required": [
                              "destinationName",
                              "destinationPseNumber",
                              "type"
                            ],
                            "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                            "title": "PSE",
                            "deprecated": true
                          }
                        ],
                        "description": "The details required for the end user destination transfer method."
                      },
                      "externalReference": {
                        "type": "string",
                        "description": "Your own reference for this order, echoed back on the order object",
                        "examples": [
                          "order-2026-000123"
                        ]
                      },
                      "integrationSessionId": {
                        "type": "string",
                        "pattern": "^int_[A-Za-z0-9]{16}$",
                        "description": "Integration session ID for partner attribution tracking",
                        "examples": [
                          "int_a1B2c3D4e5F6g7H8"
                        ]
                      },
                      "tradeDetails": {
                        "type": "object",
                        "properties": {
                          "businessType": {
                            "type": "string",
                            "enum": [
                              "GOODS_TRADE"
                            ]
                          },
                          "contractNo": {
                            "type": "string",
                            "minLength": 1
                          },
                          "website": {
                            "type": "string",
                            "format": "uri"
                          },
                          "products": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "name": {
                                  "type": "string",
                                  "minLength": 1
                                },
                                "quantity": {
                                  "type": "number",
                                  "minimum": 0,
                                  "exclusiveMinimum": true
                                },
                                "unit": {
                                  "type": "string",
                                  "minLength": 1
                                },
                                "category": {
                                  "type": "string",
                                  "minLength": 1
                                }
                              },
                              "required": [
                                "name",
                                "quantity",
                                "unit"
                              ],
                              "additionalProperties": false
                            },
                            "minItems": 1
                          }
                        },
                        "required": [
                          "businessType",
                          "contractNo",
                          "products"
                        ],
                        "additionalProperties": false,
                        "description": "Trade context for regulated payout corridors that require a transaction document (e.g. CNY SAFE compliance): goods/services type, contract number, and itemised product list. Collected at order creation for bank-deposit CN orders."
                      }
                    },
                    "required": [
                      "quoteId"
                    ],
                    "additionalProperties": false,
                    "description": "Create an order from a quote. userData (payer) is required unless the quote uses origin rail BALANCE.",
                    "title": "Create Order with User Data"
                  },
                  {
                    "type": "object",
                    "properties": {
                      "transferId": {
                        "type": "string",
                        "description": "Transfer ID without provider prefix (from path parameter)",
                        "example": "12345"
                      },
                      "quoteId": {
                        "type": "string",
                        "description": "Quote ID (required for order creation, from request body)",
                        "example": "QUOTE123"
                      }
                    },
                    "required": [
                      "transferId",
                      "quoteId"
                    ]
                  }
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Order created and transfer linked",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "allOf": [
                        {
                          "type": "object",
                          "properties": {
                            "orderId": {
                              "type": "string",
                              "description": "ID of the order",
                              "examples": [
                                "01CLFXMT67II",
                                "2R7E5Y5KFXP8",
                                "4FWWRE3Y2URM"
                              ]
                            },
                            "deposit": {
                              "type": "object",
                              "properties": {
                                "depositId": {
                                  "type": "string",
                                  "minLength": 1,
                                  "description": "ID of the deposit. Normally a 12-character internal id; deposits created before mid-2026 may carry a longer legacy id. Treat it as an opaque string."
                                },
                                "externalReference": {
                                  "type": "string",
                                  "minLength": 1,
                                  "maxLength": 128,
                                  "description": "Your own reference for this deposit. Stored as-is and returned on create, detail and list, so you can look the deposit up by it after a network timeout instead of retrying blind. Not interpreted by VirtuaBroker and not shown to the payer — for the payer's transfer reference use depositInfo.referenceCode.",
                                  "examples": [
                                    "partner-ref-0001",
                                    "inv_2026_00417"
                                  ]
                                },
                                "userData": {
                                  "oneOf": [
                                    {
                                      "type": "object",
                                      "properties": {
                                        "userType": {
                                          "type": "string",
                                          "enum": [
                                            "individual"
                                          ]
                                        },
                                        "firstName": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 50,
                                          "description": "First name of the user making the deposit (or representative for business)",
                                          "examples": [
                                            "John",
                                            "Alice",
                                            "Bob"
                                          ]
                                        },
                                        "lastName": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 100,
                                          "description": "Last name of the user making the deposit (or representative for business)",
                                          "examples": [
                                            "Doe",
                                            "Smith",
                                            "Johnson"
                                          ]
                                        },
                                        "userEmail": {
                                          "type": "string",
                                          "maxLength": 254,
                                          "format": "email",
                                          "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                          "description": "Email of the user making the deposit",
                                          "examples": [
                                            "user@virtuabroker.com",
                                            "john.doe@example.com",
                                            "alice@example.com"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "maxLength": 150,
                                          "description": "Address of the user making the deposit",
                                          "examples": [
                                            "123 Main St, Anytown, ES",
                                            "456 Elm St, Anytown, ES",
                                            "789 Oak St, Anytown, ES"
                                          ]
                                        },
                                        "taxDocumentType": {
                                          "type": "string",
                                          "maxLength": 50,
                                          "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                          "examples": [
                                            "CC",
                                            "NIT",
                                            "CE",
                                            "NIF",
                                            "Other"
                                          ]
                                        },
                                        "taxId": {
                                          "type": "string",
                                          "maxLength": 30,
                                          "description": "Tax ID of the user making the deposit",
                                          "examples": [
                                            "123-45-6789",
                                            "987-65-4321",
                                            "111-22-3333"
                                          ]
                                        },
                                        "country": {
                                          "type": "string",
                                          "enum": [
                                            "US",
                                            "CA",
                                            "GB",
                                            "DE",
                                            "FR",
                                            "AU",
                                            "JP",
                                            "KR",
                                            "SE",
                                            "NO",
                                            "DK",
                                            "FI",
                                            "NL",
                                            "BE",
                                            "CH",
                                            "AT",
                                            "NZ",
                                            "SG",
                                            "IE",
                                            "LU",
                                            "PT",
                                            "ES",
                                            "IT",
                                            "GR",
                                            "CZ",
                                            "PL",
                                            "HU",
                                            "SK",
                                            "SI",
                                            "EE",
                                            "LT",
                                            "LV",
                                            "IS",
                                            "MT",
                                            "CY",
                                            "HR",
                                            "RO",
                                            "BG",
                                            "BR",
                                            "AR",
                                            "CL",
                                            "MX",
                                            "CO",
                                            "PE",
                                            "PA",
                                            "UY",
                                            "BO",
                                            "ZA",
                                            "NG",
                                            "KE",
                                            "GH",
                                            "TZ",
                                            "UG",
                                            "RW",
                                            "MW",
                                            "ZM",
                                            "BW",
                                            "CD",
                                            "CI",
                                            "CM",
                                            "IL",
                                            "AE",
                                            "QA",
                                            "SA",
                                            "OM",
                                            "KW",
                                            "BH",
                                            "MY",
                                            "PH",
                                            "TH",
                                            "VN",
                                            "ID",
                                            "IN",
                                            "LK",
                                            "NP",
                                            "BD",
                                            "PK",
                                            "EG",
                                            "MA",
                                            "DZ",
                                            "TN",
                                            "JO",
                                            "LB",
                                            "TR",
                                            "KH",
                                            "MM",
                                            "LA",
                                            "EN",
                                            "BT",
                                            "VE",
                                            "TW",
                                            "HK",
                                            "CN"
                                          ],
                                          "description": "Country code of the user making the deposit",
                                          "examples": [
                                            "ES",
                                            "US",
                                            "GB"
                                          ]
                                        },
                                        "state": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 100,
                                          "description": "State of the user making the deposit",
                                          "examples": [
                                            "Madrid",
                                            "New York",
                                            "London"
                                          ]
                                        },
                                        "postalCode": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 30,
                                          "description": "Postal code of the user making the deposit",
                                          "examples": [
                                            "12345",
                                            "67890",
                                            "abcde"
                                          ]
                                        },
                                        "city": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 100,
                                          "description": "City of the user making the deposit",
                                          "examples": [
                                            "Madrid",
                                            "New York",
                                            "London"
                                          ]
                                        },
                                        "dob": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 30,
                                          "description": "Date of birth of the user making the deposit",
                                          "examples": [
                                            "1990-01-01",
                                            "1995-05-15",
                                            "1988-12-31"
                                          ]
                                        },
                                        "phoneNumber": {
                                          "type": "string",
                                          "maxLength": 30,
                                          "description": "Phone number of the user making the deposit",
                                          "examples": [
                                            "+447700900123",
                                            "+447700900456",
                                            "+447700900789"
                                          ]
                                        },
                                        "kycId": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 300,
                                          "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                          "examples": [
                                            "kyc-12345",
                                            "kyc-67890",
                                            "kyc-abcde"
                                          ]
                                        },
                                        "activity": {
                                          "type": "string",
                                          "description": "Activity of the user making the deposit",
                                          "examples": [
                                            "worker",
                                            "business",
                                            "student"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "userType",
                                        "firstName",
                                        "userEmail",
                                        "country"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "userType": {
                                          "type": "string",
                                          "enum": [
                                            "business"
                                          ]
                                        },
                                        "businessName": {
                                          "type": "string",
                                          "maxLength": 150,
                                          "description": "Business name (required when userType is business)",
                                          "examples": [
                                            "Acme Corp",
                                            "Tech Solutions Inc",
                                            "Global Services Ltd"
                                          ]
                                        },
                                        "firstName": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 50,
                                          "description": "First name of the user making the deposit (or representative for business)",
                                          "examples": [
                                            "John",
                                            "Alice",
                                            "Bob"
                                          ]
                                        },
                                        "userEmail": {
                                          "type": "string",
                                          "maxLength": 254,
                                          "format": "email",
                                          "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                          "description": "Email of the user making the deposit",
                                          "examples": [
                                            "user@virtuabroker.com",
                                            "john.doe@example.com",
                                            "alice@example.com"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "maxLength": 150,
                                          "description": "Address of the user making the deposit",
                                          "examples": [
                                            "123 Main St, Anytown, ES",
                                            "456 Elm St, Anytown, ES",
                                            "789 Oak St, Anytown, ES"
                                          ]
                                        },
                                        "taxDocumentType": {
                                          "type": "string",
                                          "maxLength": 50,
                                          "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                          "examples": [
                                            "CC",
                                            "NIT",
                                            "CE",
                                            "NIF",
                                            "Other"
                                          ]
                                        },
                                        "taxId": {
                                          "type": "string",
                                          "maxLength": 30,
                                          "description": "Tax ID of the user making the deposit",
                                          "examples": [
                                            "123-45-6789",
                                            "987-65-4321",
                                            "111-22-3333"
                                          ]
                                        },
                                        "country": {
                                          "type": "string",
                                          "enum": [
                                            "US",
                                            "CA",
                                            "GB",
                                            "DE",
                                            "FR",
                                            "AU",
                                            "JP",
                                            "KR",
                                            "SE",
                                            "NO",
                                            "DK",
                                            "FI",
                                            "NL",
                                            "BE",
                                            "CH",
                                            "AT",
                                            "NZ",
                                            "SG",
                                            "IE",
                                            "LU",
                                            "PT",
                                            "ES",
                                            "IT",
                                            "GR",
                                            "CZ",
                                            "PL",
                                            "HU",
                                            "SK",
                                            "SI",
                                            "EE",
                                            "LT",
                                            "LV",
                                            "IS",
                                            "MT",
                                            "CY",
                                            "HR",
                                            "RO",
                                            "BG",
                                            "BR",
                                            "AR",
                                            "CL",
                                            "MX",
                                            "CO",
                                            "PE",
                                            "PA",
                                            "UY",
                                            "BO",
                                            "ZA",
                                            "NG",
                                            "KE",
                                            "GH",
                                            "TZ",
                                            "UG",
                                            "RW",
                                            "MW",
                                            "ZM",
                                            "BW",
                                            "CD",
                                            "CI",
                                            "CM",
                                            "IL",
                                            "AE",
                                            "QA",
                                            "SA",
                                            "OM",
                                            "KW",
                                            "BH",
                                            "MY",
                                            "PH",
                                            "TH",
                                            "VN",
                                            "ID",
                                            "IN",
                                            "LK",
                                            "NP",
                                            "BD",
                                            "PK",
                                            "EG",
                                            "MA",
                                            "DZ",
                                            "TN",
                                            "JO",
                                            "LB",
                                            "TR",
                                            "KH",
                                            "MM",
                                            "LA",
                                            "EN",
                                            "BT",
                                            "VE",
                                            "TW",
                                            "HK",
                                            "CN"
                                          ],
                                          "description": "Country code of the user making the deposit",
                                          "examples": [
                                            "ES",
                                            "US",
                                            "GB"
                                          ]
                                        },
                                        "state": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 100,
                                          "description": "State of the user making the deposit",
                                          "examples": [
                                            "Madrid",
                                            "New York",
                                            "London"
                                          ]
                                        },
                                        "postalCode": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 30,
                                          "description": "Postal code of the user making the deposit",
                                          "examples": [
                                            "12345",
                                            "67890",
                                            "abcde"
                                          ]
                                        },
                                        "city": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 100,
                                          "description": "City of the user making the deposit",
                                          "examples": [
                                            "Madrid",
                                            "New York",
                                            "London"
                                          ]
                                        },
                                        "dob": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 30,
                                          "description": "Date of birth of the user making the deposit",
                                          "examples": [
                                            "1990-01-01",
                                            "1995-05-15",
                                            "1988-12-31"
                                          ]
                                        },
                                        "phoneNumber": {
                                          "type": "string",
                                          "maxLength": 30,
                                          "description": "Phone number of the user making the deposit",
                                          "examples": [
                                            "+447700900123",
                                            "+447700900456",
                                            "+447700900789"
                                          ]
                                        },
                                        "kycId": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 300,
                                          "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                          "examples": [
                                            "kyc-12345",
                                            "kyc-67890",
                                            "kyc-abcde"
                                          ]
                                        },
                                        "activity": {
                                          "type": "string",
                                          "description": "Activity of the user making the deposit",
                                          "examples": [
                                            "worker",
                                            "business",
                                            "student"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "userType",
                                        "businessName",
                                        "firstName",
                                        "userEmail",
                                        "country"
                                      ]
                                    }
                                  ],
                                  "description": "User data of the person/company making the deposit",
                                  "examples": [
                                    {
                                      "userType": "individual",
                                      "firstName": "John",
                                      "lastName": "Doe",
                                      "userEmail": "user@virtuabroker.com",
                                      "address": "123 Main St, Anytown, ES",
                                      "taxId": "123-45-6789",
                                      "country": "ES"
                                    },
                                    {
                                      "userType": "individual",
                                      "firstName": "Alice",
                                      "lastName": "Smith",
                                      "userEmail": "alice@example.com",
                                      "address": "456 Elm St, Anytown, ES",
                                      "taxId": "987-65-4321",
                                      "country": "ES"
                                    }
                                  ]
                                },
                                "createdAt": {
                                  "type": "number",
                                  "description": "Creation time of the deposit",
                                  "examples": [
                                    1723027132,
                                    1723027133,
                                    1723027134
                                  ]
                                },
                                "rail": {
                                  "type": "string",
                                  "enum": [
                                    "BALANCE",
                                    "SEPA",
                                    "BTC",
                                    "ETH",
                                    "MATIC",
                                    "POLYGON",
                                    "CELO",
                                    "TRON",
                                    "SOLANA",
                                    "ARBITRUM",
                                    "OPTIMISM",
                                    "AVALANCHE",
                                    "BSC",
                                    "BASE",
                                    "XRP",
                                    "PIX_BR",
                                    "UPI",
                                    "IMPS",
                                    "TRY_BANK_TRANSFER",
                                    "AED_BANK_TRANSFER",
                                    "SPEI",
                                    "IDR_BANK_TRANSFER",
                                    "CREDIT_CARD",
                                    "THAI_QR",
                                    "VIET_QR",
                                    "GCASH",
                                    "ARGENTINA_BANK_TRANSFER",
                                    "PSE",
                                    "CLABE",
                                    "PIX",
                                    "BANK_DEPOSIT_COL",
                                    "BANK_DEPOSIT_AR",
                                    "BANK_DEPOSIT_CL",
                                    "BANK_DEPOSIT_PE",
                                    "BANK_DEPOSIT_BO",
                                    "BANK_DEPOSIT_BR",
                                    "BANK_DEPOSIT_NG",
                                    "BANK_DEPOSIT_KE",
                                    "BANK_DEPOSIT_GH",
                                    "BANK_DEPOSIT_ZA",
                                    "BANK_DEPOSIT_TZ",
                                    "BANK_DEPOSIT_UG",
                                    "BANK_DEPOSIT_RW",
                                    "BANK_DEPOSIT_MW",
                                    "BANK_DEPOSIT_ZM",
                                    "BANK_DEPOSIT_BW",
                                    "BANK_DEPOSIT_CD",
                                    "BANK_DEPOSIT_XOF",
                                    "BANK_DEPOSIT_XAF",
                                    "MOBILE_MONEY_NG",
                                    "MOBILE_MONEY_KE",
                                    "MOBILE_MONEY_GH",
                                    "MOBILE_MONEY_ZA",
                                    "MOBILE_MONEY_TZ",
                                    "MOBILE_MONEY_UG",
                                    "MOBILE_MONEY_RW",
                                    "MOBILE_MONEY_MW",
                                    "MOBILE_MONEY_ZM",
                                    "MOBILE_MONEY_BW",
                                    "MOBILE_MONEY_CD",
                                    "MOBILE_MONEY_XOF",
                                    "MOBILE_MONEY_XAF",
                                    "ACH_US",
                                    "GBP_BANK_TRANSFER"
                                  ],
                                  "description": "Rail of the deposit"
                                },
                                "receivedAt": {
                                  "type": "number",
                                  "description": "Unix ms timestamp of when the funds for this deposit ARRIVED — recorded when the incoming payment is matched to the deposit, which is before it is credited. Present whenever funds have arrived, including a deposit whose funds are still held in review; omitted entirely when no funds ever arrived, so a never-funded or cancelled deposit has no value here and its presence is a reliable settlement signal for reconciliation. Identical on GET /v1/deposits and GET /v1/deposits/{depositId}. Note that the deposit object embedded in order and operation responses does not yet apply this rule — it returns the stored value. Not the creation time — use createdAt for that.",
                                  "examples": [
                                    1723027132000,
                                    1723027133000,
                                    1723027134000
                                  ]
                                },
                                "expectedAmount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Amount expected of the deposit",
                                  "examples": [
                                    1000,
                                    2000,
                                    3000
                                  ]
                                },
                                "amount": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Amount received of the deposit",
                                  "examples": [
                                    1000,
                                    2000,
                                    3000
                                  ]
                                },
                                "currency": {
                                  "anyOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "EUR",
                                        "USD",
                                        "GBP",
                                        "BRL",
                                        "MXN",
                                        "ARS",
                                        "COP",
                                        "PEN",
                                        "NGN",
                                        "KES",
                                        "TZS",
                                        "UGX",
                                        "RWF",
                                        "MWK",
                                        "ZMW",
                                        "XOF",
                                        "XAF",
                                        "BWP"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "USDC",
                                        "USDT",
                                        "CUSD",
                                        "BTC",
                                        "ETH",
                                        "POL",
                                        "SOL",
                                        "TRX",
                                        "AVAX",
                                        "XRP",
                                        "BNB"
                                      ]
                                    }
                                  ],
                                  "description": "Currency of the deposit",
                                  "examples": [
                                    "EUR",
                                    "BRL"
                                  ]
                                },
                                "fee": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Fee for the deposit. This value is written once the deposit has been executed. Meanwhile it will appear 0.",
                                  "example": 10
                                },
                                "expectedFee": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Fee for the deposit. This value is correlated with the expected amount for the deposit.",
                                  "examples": [
                                    10,
                                    20,
                                    30
                                  ]
                                },
                                "feeCurrency": {
                                  "anyOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "EUR",
                                        "USD",
                                        "GBP",
                                        "BRL",
                                        "MXN",
                                        "ARS",
                                        "COP",
                                        "PEN",
                                        "NGN",
                                        "KES",
                                        "TZS",
                                        "UGX",
                                        "RWF",
                                        "MWK",
                                        "ZMW",
                                        "XOF",
                                        "XAF",
                                        "BWP"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "USDC",
                                        "USDT",
                                        "CUSD",
                                        "BTC",
                                        "ETH",
                                        "POL",
                                        "SOL",
                                        "TRX",
                                        "AVAX",
                                        "XRP",
                                        "BNB"
                                      ]
                                    }
                                  ],
                                  "description": "Currency of the fee",
                                  "examples": [
                                    "EUR",
                                    "BRL"
                                  ]
                                },
                                "status": {
                                  "anyOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "Pending",
                                        "Processing",
                                        "Success",
                                        "Failed",
                                        "Canceled",
                                        "Reviewing"
                                      ],
                                      "description": "Common status values that are shared across all operation types",
                                      "examples": [
                                        "Pending",
                                        "Processing",
                                        "Success",
                                        "Failed",
                                        "Canceled",
                                        "Reviewing"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "PendingCancel",
                                        "Received"
                                      ]
                                    }
                                  ],
                                  "description": "Status of the deposit",
                                  "examples": [
                                    "Pending",
                                    "Success",
                                    "Failed",
                                    "Received",
                                    "PendingCancel"
                                  ]
                                },
                                "depositInfo": {
                                  "oneOf": [
                                    {
                                      "type": "object",
                                      "properties": {
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Name of the account holder",
                                          "example": "John Doe"
                                        },
                                        "iban": {
                                          "type": "string",
                                          "description": "SEPA Bank Account Number",
                                          "example": "DE8937XXXXXXXXXXXX3000"
                                        },
                                        "bic": {
                                          "type": "string",
                                          "description": "Bank BIC/SWIFT code",
                                          "example": "DEUTDEFF"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Name of the bank",
                                          "example": "Deutsche Bank"
                                        },
                                        "bankAddress": {
                                          "type": "string",
                                          "description": "Address of the bank",
                                          "example": "Taunusanlage 12"
                                        },
                                        "bankCity": {
                                          "type": "string",
                                          "description": "City of the bank",
                                          "example": "Frankfurt am Main"
                                        },
                                        "bankZipcode": {
                                          "type": "string",
                                          "description": "Zipcode of the bank",
                                          "example": "60325"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "enum": [
                                            "US",
                                            "CA",
                                            "GB",
                                            "DE",
                                            "FR",
                                            "AU",
                                            "JP",
                                            "KR",
                                            "SE",
                                            "NO",
                                            "DK",
                                            "FI",
                                            "NL",
                                            "BE",
                                            "CH",
                                            "AT",
                                            "NZ",
                                            "SG",
                                            "IE",
                                            "LU",
                                            "PT",
                                            "ES",
                                            "IT",
                                            "GR",
                                            "CZ",
                                            "PL",
                                            "HU",
                                            "SK",
                                            "SI",
                                            "EE",
                                            "LT",
                                            "LV",
                                            "IS",
                                            "MT",
                                            "CY",
                                            "HR",
                                            "RO",
                                            "BG",
                                            "BR",
                                            "AR",
                                            "CL",
                                            "MX",
                                            "CO",
                                            "PE",
                                            "PA",
                                            "UY",
                                            "BO",
                                            "ZA",
                                            "NG",
                                            "KE",
                                            "GH",
                                            "TZ",
                                            "UG",
                                            "RW",
                                            "MW",
                                            "ZM",
                                            "BW",
                                            "CD",
                                            "CI",
                                            "CM",
                                            "IL",
                                            "AE",
                                            "QA",
                                            "SA",
                                            "OM",
                                            "KW",
                                            "BH",
                                            "MY",
                                            "PH",
                                            "TH",
                                            "VN",
                                            "ID",
                                            "IN",
                                            "LK",
                                            "NP",
                                            "BD",
                                            "PK",
                                            "EG",
                                            "MA",
                                            "DZ",
                                            "TN",
                                            "JO",
                                            "LB",
                                            "TR",
                                            "KH",
                                            "MM",
                                            "LA",
                                            "EN",
                                            "BT",
                                            "VE",
                                            "TW",
                                            "HK",
                                            "CN"
                                          ],
                                          "description": "Country of the bank",
                                          "example": "DE"
                                        },
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "SEPA"
                                          ]
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount. It can be 0 for open-amount bank transfers where the sender chooses the final amount from their bank.",
                                          "example": 1000
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "minLength": 1,
                                          "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order. The user must include this code when making the deposit to ensure accurate processing. In cases where the reference code is incorrect or missing, we manually match orders based on the sender's name and other available details. In case the deposit is not matched, we will mark the order as Reviewing and the system will require manual attention.",
                                          "example": "REF123456"
                                        },
                                        "extraDepositMethods": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "methodType": {
                                                "type": "string",
                                                "enum": [
                                                  "HOSTED_CHECKOUT"
                                                ],
                                                "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                                              },
                                              "url": {
                                                "type": "string",
                                                "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                                                "example": "https://checkout.example.com/pay/abc123"
                                              },
                                              "callbackUrl": {
                                                "type": "string",
                                                "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                                              },
                                              "referenceCode": {
                                                "type": "string",
                                                "description": "Payment reference for this method (equals the deposit/order reference)"
                                              },
                                              "amount": {
                                                "type": "number",
                                                "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                                              },
                                              "currency": {
                                                "type": "string",
                                                "description": "Currency of this method"
                                              },
                                              "expiresAt": {
                                                "type": "number",
                                                "description": "Unix ms after which `url` is no longer valid, when known"
                                              }
                                            },
                                            "required": [
                                              "methodType",
                                              "url"
                                            ],
                                            "description": "An additional, optional way to pay this deposit"
                                          },
                                          "description": "Additional, optional ways to pay this same deposit (e.g. a hosted card page). The bank details above remain the primary method; ignore this field if you only support bank transfer."
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ],
                                      "description": "Detailed information about a bank deposit, including the amount and a unique reference code for identification."
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "address": {
                                          "type": "string",
                                          "minLength": 1,
                                          "description": "Crypto wallet address",
                                          "example": "0x1A2b3C4d5E6f7890AbCdEf1234567890AbCdEf12"
                                        },
                                        "network": {
                                          "type": "string",
                                          "enum": [
                                            "MATIC",
                                            "ETH",
                                            "CELO",
                                            "TRON",
                                            "BTC",
                                            "SOLANA",
                                            "XRP",
                                            "CARDANO",
                                            "BSC",
                                            "ARBITRUM",
                                            "OPTIMISM",
                                            "AVALANCHE",
                                            "BASE"
                                          ],
                                          "description": "Network for the deposit for crypto deposits",
                                          "examples": [
                                            "ETH",
                                            "MATIC",
                                            "CELO"
                                          ]
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Optional memo for the transaction",
                                          "example": "Payment for services"
                                        },
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "CRYPTO"
                                          ]
                                        },
                                        "qrCode": {
                                          "type": "string",
                                          "description": "Base64-encoded QR image for the deposit address",
                                          "example": "iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAIAAADTED8xAAABpklEQVR42u3BAQ0AAADCoPdPbQ8HFAAAAAAAAAAAAAAAAAA..."
                                        },
                                        "qrCodeUrl": {
                                          "type": "string",
                                          "format": "uri",
                                          "description": "7-day signed GCS URL of the QR code PNG"
                                        },
                                        "qrCodeExpiresAt": {
                                          "type": "number",
                                          "description": "Unix timestamp (ms) when qrCodeUrl expires"
                                        },
                                        "receivingAddress": {
                                          "type": "string",
                                          "description": "The wallet address where funds should be sent",
                                          "example": "0xAbCdEf0123456789AbCdEf0123456789AbCdEf01"
                                        },
                                        "tokenContract": {
                                          "type": "string",
                                          "description": "The ERC20 token contract address",
                                          "example": "0x765DE816845861e75A25fCA122bb6898B8B1282a"
                                        },
                                        "decimals": {
                                          "type": "number",
                                          "description": "Token decimals (default 18)",
                                          "example": 18
                                        }
                                      },
                                      "required": [
                                        "address",
                                        "network",
                                        "depositType"
                                      ],
                                      "description": "Crypto Deposit Information"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "base64QRCode": {
                                          "type": "string",
                                          "minLength": 1,
                                          "description": "Base64 encoded QR code",
                                          "example": "base64QRCode"
                                        },
                                        "qrCodeString": {
                                          "type": "string",
                                          "minLength": 1,
                                          "description": "The Pix copy-and-paste code (BR Code payload) the payer pastes into their bank app. Pass it through unchanged — it carries its own checksum.",
                                          "example": "qrCodeString"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "minLength": 1,
                                          "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order",
                                          "example": "REF123456"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "exclusiveMinimum": true,
                                          "description": "The monetary value to be deposited into the bank. This amount should be positive and accurately reflect the intended deposit.",
                                          "example": 1000
                                        },
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "PIX"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "base64QRCode",
                                        "qrCodeString",
                                        "referenceCode",
                                        "amount",
                                        "depositType"
                                      ],
                                      "description": "Pix Deposit Information"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "CREDIT_CARD"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "depositType"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "bankName": {
                                          "type": "string",
                                          "description": "Name of the bank (present when the rail provides it)"
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Name of the account holder (present when the rail provides it)"
                                        },
                                        "clabe": {
                                          "type": "string",
                                          "description": "CLABE number"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Bank account number (e.g. from the BANK_TRANSFER payment method)"
                                        },
                                        "reference": {
                                          "type": "string",
                                          "description": "Payment reference (e.g. from the BANK_TRANSFER payment method)"
                                        },
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "CLABE"
                                          ],
                                          "description": "Type of the deposit"
                                        }
                                      },
                                      "required": [
                                        "clabe",
                                        "depositType"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "url": {
                                          "type": "string",
                                          "description": "URL of the PSE payment"
                                        },
                                        "amountPrefilled": {
                                          "type": "boolean",
                                          "description": "Whether the payment page already carries the amount. When false or absent, the payer must enter it."
                                        },
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "PSE"
                                          ],
                                          "description": "Type of the deposit"
                                        }
                                      },
                                      "required": [
                                        "url",
                                        "depositType"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "BALANCE"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "depositType"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "PENDING"
                                          ]
                                        },
                                        "currency": {
                                          "type": "string",
                                          "description": "Currency of the deposit"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the order/deposit"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount. It can be 0 while bank transfer details are open-amount or still being provisioned."
                                        },
                                        "extraDepositMethods": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "methodType": {
                                                "type": "string",
                                                "enum": [
                                                  "HOSTED_CHECKOUT"
                                                ],
                                                "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                                              },
                                              "url": {
                                                "type": "string",
                                                "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                                                "example": "https://checkout.example.com/pay/abc123"
                                              },
                                              "callbackUrl": {
                                                "type": "string",
                                                "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                                              },
                                              "referenceCode": {
                                                "type": "string",
                                                "description": "Payment reference for this method (equals the deposit/order reference)"
                                              },
                                              "amount": {
                                                "type": "number",
                                                "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                                              },
                                              "currency": {
                                                "type": "string",
                                                "description": "Currency of this method"
                                              },
                                              "expiresAt": {
                                                "type": "number",
                                                "description": "Unix ms after which `url` is no longer valid, when known"
                                              }
                                            },
                                            "required": [
                                              "methodType",
                                              "url"
                                            ],
                                            "description": "An additional, optional way to pay this deposit"
                                          },
                                          "description": "Additional ways to pay while the bank details are being provisioned (e.g. a hosted card page). Optional — ignore it and wait for the bank details if you only support bank transfer."
                                        },
                                        "pendingReason": {
                                          "type": "string",
                                          "enum": [
                                            "collection_account_activating",
                                            "accountless_per_account_corridor"
                                          ],
                                          "description": "Why the instructions are still being provisioned, when the reason is known. `collection_account_activating` means the collection account for this payer is being activated and payable details are expected shortly. `accountless_per_account_corridor` means this corridor collects only into a collection account dedicated to the paying account, this request names no account, and none can be created for it — so payable details will NOT arrive by waiting; create the deposit against an account instead. Absence never conveys timing on either surface: here it means only that no reason is classifiable, and an account-level deposit-method instruction never carries the field at all. Treat the values as an open set and ignore any you do not recognise."
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "currency",
                                        "referenceCode",
                                        "amount"
                                      ],
                                      "description": "Deposit details are being provisioned; poll the order/deposit or wait for webhook"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "IMPS"
                                          ]
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Name of the bank"
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Name of the account holder"
                                        },
                                        "ifsc": {
                                          "type": "string",
                                          "description": "ifsc number"
                                        },
                                        "type": {
                                          "type": "string",
                                          "description": "Type of the deposit"
                                        },
                                        "branch": {
                                          "type": "string",
                                          "description": "Branch of the bank"
                                        },
                                        "bank": {
                                          "type": "string",
                                          "description": "Bank of the account"
                                        },
                                        "otp": {
                                          "type": "string",
                                          "description": "OTP of the deposit"
                                        },
                                        "bankNotes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "number",
                                                "description": "Type of note: -1 for warning, 1 for info"
                                              },
                                              "msg": {
                                                "type": "string",
                                                "description": "Message content"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "msg"
                                            ]
                                          },
                                          "description": "Additional bank instructions"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "accountNumber",
                                        "bankName",
                                        "accountHolder",
                                        "ifsc",
                                        "type",
                                        "branch",
                                        "bank",
                                        "otp"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "UPI"
                                          ]
                                        },
                                        "vpa": {
                                          "type": "string",
                                          "description": "Virtual Payment Address"
                                        },
                                        "name": {
                                          "type": "string",
                                          "description": "Name of the account holder"
                                        },
                                        "otp": {
                                          "type": "string",
                                          "description": "OTP for the transaction"
                                        },
                                        "paymentLink": {
                                          "type": "string",
                                          "description": "Payment link"
                                        },
                                        "upiNotes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "number",
                                                "description": "Type of note: -1 for warning, 1 for info"
                                              },
                                              "msg": {
                                                "type": "string",
                                                "description": "Message content"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "msg"
                                            ]
                                          },
                                          "description": "Additional UPI instructions"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "vpa",
                                        "name",
                                        "otp",
                                        "paymentLink"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "AED_BANK_TRANSFER"
                                          ]
                                        },
                                        "iban": {
                                          "type": "string",
                                          "description": "International Bank Account Number"
                                        },
                                        "name": {
                                          "type": "string",
                                          "description": "Name of the account holder"
                                        },
                                        "bank": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "type": {
                                          "type": "string",
                                          "description": "Account type"
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Bank address"
                                        },
                                        "email": {
                                          "type": "string",
                                          "description": "Contact email"
                                        },
                                        "phoneNumber": {
                                          "type": "string",
                                          "description": "Contact phone number"
                                        },
                                        "transferCode": {
                                          "type": "string",
                                          "description": "Transfer code"
                                        },
                                        "poBox": {
                                          "type": "string",
                                          "description": "P.O. Box"
                                        },
                                        "otp": {
                                          "type": "string",
                                          "description": "OTP for the transaction"
                                        },
                                        "bankNotes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "number",
                                                "description": "Type of note: -1 for warning, 1 for info"
                                              },
                                              "msg": {
                                                "type": "string",
                                                "description": "Message content"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "msg"
                                            ]
                                          },
                                          "description": "Additional bank instructions"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "iban",
                                        "name",
                                        "bank",
                                        "type",
                                        "address",
                                        "email",
                                        "phoneNumber",
                                        "transferCode",
                                        "poBox",
                                        "otp"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "SPEI"
                                          ]
                                        },
                                        "clabe": {
                                          "type": "string",
                                          "description": "CLABE number"
                                        },
                                        "name": {
                                          "type": "string",
                                          "description": "Name of the account holder"
                                        },
                                        "bank": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankNotes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "number",
                                                "description": "Type of note: -1 for warning, 1 for info"
                                              },
                                              "msg": {
                                                "type": "string",
                                                "description": "Message content"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "msg"
                                            ]
                                          },
                                          "description": "Additional bank instructions"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "clabe",
                                        "name",
                                        "bank"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "TRY_BANK_TRANSFER"
                                          ]
                                        },
                                        "iban": {
                                          "type": "string",
                                          "description": "International Bank Account Number"
                                        },
                                        "name": {
                                          "type": "string",
                                          "description": "Name of the account holder"
                                        },
                                        "bank": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "otp": {
                                          "type": "string",
                                          "description": "OTP for the transaction"
                                        },
                                        "bankNotes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "number",
                                                "description": "Type of note: -1 for warning, 1 for info"
                                              },
                                              "msg": {
                                                "type": "string",
                                                "description": "Message content"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "msg"
                                            ]
                                          },
                                          "description": "Additional bank instructions"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "iban",
                                        "name",
                                        "bank",
                                        "otp"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "IDR_BANK_TRANSFER"
                                          ]
                                        },
                                        "virtualAccount": {
                                          "type": "string",
                                          "description": "Virtual account number"
                                        },
                                        "name": {
                                          "type": "string",
                                          "description": "Name of the account holder"
                                        },
                                        "bank": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankNotes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "number",
                                                "description": "Type of note: -1 for warning, 1 for info"
                                              },
                                              "msg": {
                                                "type": "string",
                                                "description": "Message content"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "msg"
                                            ]
                                          },
                                          "description": "Additional bank instructions"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "virtualAccount",
                                        "name",
                                        "bank"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "THAI_QR"
                                          ]
                                        },
                                        "qrCode": {
                                          "type": "string",
                                          "description": "QR code"
                                        },
                                        "otp": {
                                          "type": "string",
                                          "description": "OTP for the transaction"
                                        },
                                        "bankNotes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "number",
                                                "description": "Type of note: -1 for warning, 1 for info"
                                              },
                                              "msg": {
                                                "type": "string",
                                                "description": "Message content"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "msg"
                                            ]
                                          },
                                          "description": "Additional bank instructions"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "qrCode",
                                        "otp"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "VIET_QR"
                                          ]
                                        },
                                        "qrCode": {
                                          "type": "string",
                                          "description": "QR code"
                                        },
                                        "otp": {
                                          "type": "string",
                                          "description": "OTP for the transaction"
                                        },
                                        "bankNotes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "number",
                                                "description": "Type of note: -1 for warning, 1 for info"
                                              },
                                              "msg": {
                                                "type": "string",
                                                "description": "Message content"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "msg"
                                            ]
                                          },
                                          "description": "Additional bank instructions"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "qrCode",
                                        "otp"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "GCASH"
                                          ]
                                        },
                                        "qrCode": {
                                          "type": "string",
                                          "description": "QR code"
                                        },
                                        "otp": {
                                          "type": "string",
                                          "description": "OTP for the transaction"
                                        },
                                        "bankNotes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "number",
                                                "description": "Type of note: -1 for warning, 1 for info"
                                              },
                                              "msg": {
                                                "type": "string",
                                                "description": "Message content"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "msg"
                                            ]
                                          },
                                          "description": "Additional bank instructions"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "qrCode",
                                        "otp"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "ARGENTINA_BANK_TRANSFER"
                                          ]
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Account number"
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "accountNumber"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "ACH_US"
                                          ]
                                        },
                                        "routingNumber": {
                                          "type": "string",
                                          "description": "US bank ABA routing number"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "US bank account number"
                                        },
                                        "beneficiaryName": {
                                          "type": "string",
                                          "description": "Beneficiary name on the account"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Name of the bank"
                                        },
                                        "bankAddress": {
                                          "type": "string",
                                          "description": "Address of the bank"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names (e.g. ACH, Wire)"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount in USD"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "minLength": 1,
                                          "description": "Reference code to include in the wire/ACH transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "routingNumber",
                                        "accountNumber",
                                        "beneficiaryName",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "ACH_PULL"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "depositType"
                                      ],
                                      "description": "Funds are pulled from the holder's own linked US bank account; no transfer instructions apply"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "LOCALBANK"
                                          ],
                                          "description": "Deprecated generic local-bank payin type. Superseded by the corridor-specific deposit types (e.g. SEPA, ACH_US, GBP_BANK_TRANSFER, CLABE/SPEI, PIX, ARGENTINA_BANK_TRANSFER, BANK_DEPOSIT_<CC>). Still returned on some corridors and on historical records, so integrators must continue to handle it. Discover the applicable per-currency method via GET /v1/currencies/{currency}/payin-schema.",
                                          "deprecated": true
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "GBP_BANK_TRANSFER"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "UK bank account number"
                                        },
                                        "sortCode": {
                                          "type": "string",
                                          "description": "UK sort code"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Name of the bank"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names (e.g. Faster Payments, CHAPS, BACS)"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount in GBP"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "minLength": 1,
                                          "description": "Reference code to include in the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "accountHolder",
                                        "accountNumber",
                                        "sortCode",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_COL"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_CL"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_BO"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_BR"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_NG"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_KE"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_GH"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_ZA"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_TZ"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_UG"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_RW"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_MW"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_ZM"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_BW"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_CD"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_XOF"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_XAF"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_NG"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_KE"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_GH"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_ZA"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_TZ"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_UG"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_RW"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_MW"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_ZM"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_BW"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_CD"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_XOF"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "depositType": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_XAF"
                                          ]
                                        },
                                        "accountHolder": {
                                          "type": "string",
                                          "description": "Account holder name"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "Local bank account number"
                                        },
                                        "bankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "bankCountry": {
                                          "type": "string",
                                          "description": "ISO-3166 country code"
                                        },
                                        "routingCodes": {
                                          "type": "array",
                                          "items": {
                                            "type": "object",
                                            "properties": {
                                              "type": {
                                                "type": "string",
                                                "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                              },
                                              "value": {
                                                "type": "string",
                                                "description": "Routing code value"
                                              }
                                            },
                                            "required": [
                                              "type",
                                              "value"
                                            ]
                                          },
                                          "description": "Routing identifiers (e.g. sort code, routing number)"
                                        },
                                        "schemes": {
                                          "type": "array",
                                          "items": {
                                            "type": "string"
                                          },
                                          "description": "Accepted payment scheme names for this account"
                                        },
                                        "amount": {
                                          "type": "number",
                                          "minimum": 0,
                                          "description": "Expected deposit amount"
                                        },
                                        "referenceCode": {
                                          "type": "string",
                                          "description": "Reference code for the transfer"
                                        }
                                      },
                                      "required": [
                                        "depositType",
                                        "amount",
                                        "referenceCode"
                                      ]
                                    }
                                  ],
                                  "description": "Details of the deposit",
                                  "examples": [
                                    {
                                      "accountHolder": "John Doe",
                                      "iban": "DE8937XXXXXXXXXXXX3000",
                                      "bic": "COBADEFFXXX",
                                      "bankName": "Commerzbank",
                                      "bankAddress": "Mainzer Landstrasse 151-153",
                                      "bankCity": "Frankfurt",
                                      "bankZipcode": "60327",
                                      "bankCountry": "DE",
                                      "amount": 1000,
                                      "referenceCode": "ABC123",
                                      "depositType": "SEPA"
                                    }
                                  ]
                                },
                                "depositInfoPending": {
                                  "type": "boolean",
                                  "description": "True while the payment instructions are still being prepared. Poll this deposit until it is false (or absent) before showing the instructions to the payer."
                                },
                                "complianceHold": {
                                  "type": "object",
                                  "properties": {
                                    "reason": {
                                      "type": "string",
                                      "enum": [
                                        "screening",
                                        "fiat_monitoring"
                                      ],
                                      "description": "Compliance hold reason"
                                    }
                                  },
                                  "required": [
                                    "reason"
                                  ],
                                  "description": "Present while the inbound transfer funding this deposit is held in provider compliance review. The deposit stays Reviewing (amount 0, never credited) until the hold clears (promote to Received) or the transfer is rejected/returned (terminalize)."
                                }
                              },
                              "required": [
                                "depositId",
                                "createdAt",
                                "expectedAmount",
                                "amount",
                                "currency",
                                "fee",
                                "expectedFee",
                                "feeCurrency",
                                "status",
                                "depositInfo"
                              ],
                              "description": "Details of the deposit associated with the order"
                            },
                            "trade": {
                              "type": "object",
                              "properties": {
                                "tradeId": {
                                  "type": "string",
                                  "description": "ID of the trade",
                                  "example": "123e4567-e89b-12d3-a456-426614174000"
                                },
                                "createdAt": {
                                  "type": "number",
                                  "description": "Creation time of the trade",
                                  "example": 1723027132
                                },
                                "pair": {
                                  "type": "string",
                                  "description": "Asset pair to trade",
                                  "example": "BTC/EUR"
                                },
                                "tradeType": {
                                  "type": "string",
                                  "enum": [
                                    "buy",
                                    "sell"
                                  ],
                                  "description": "Type of trade"
                                },
                                "volume": {
                                  "type": "number",
                                  "minimum": 0,
                                  "exclusiveMinimum": true,
                                  "description": "Order quantity in lots",
                                  "example": 0.5
                                },
                                "price": {
                                  "type": "number",
                                  "minimum": 0,
                                  "exclusiveMinimum": true,
                                  "description": "Price at which to place the order based on the pair",
                                  "example": 30000
                                },
                                "conversionRate": {
                                  "type": "number",
                                  "minimum": 0,
                                  "exclusiveMinimum": true,
                                  "description": "Conversion rate at which to place the order based on the pair",
                                  "example": 30000
                                },
                                "fee": {
                                  "type": "number",
                                  "minimum": 0,
                                  "description": "Fee for the trade",
                                  "example": 0.1
                                },
                                "feeCurrency": {
                                  "type": "string",
                                  "description": "Currency of the fee",
                                  "example": "EUR"
                                },
                                "userEmail": {
                                  "type": "string",
                                  "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                  "description": "Email of the user making the trade",
                                  "example": "user@example.com"
                                }
                              },
                              "required": [
                                "tradeId",
                                "createdAt",
                                "pair",
                                "tradeType",
                                "volume",
                                "fee",
                                "feeCurrency",
                                "userEmail"
                              ],
                              "description": "Details of the trade associated with the order"
                            },
                            "withdraw": {
                              "type": "object",
                              "properties": {
                                "withdrawalId": {
                                  "anyOf": [
                                    {
                                      "type": "string",
                                      "minLength": 12,
                                      "maxLength": 12,
                                      "pattern": "^[A-Z0-9]{12}$",
                                      "examples": [
                                        "01CLFXMT67II",
                                        "2R7E5Y5KFXP8",
                                        "4FWWRE3Y2URM"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "format": "uuid"
                                    }
                                  ],
                                  "description": "ID of the withdrawal"
                                },
                                "userData": {
                                  "oneOf": [
                                    {
                                      "type": "object",
                                      "properties": {
                                        "userType": {
                                          "type": "string",
                                          "enum": [
                                            "individual"
                                          ]
                                        },
                                        "firstName": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 50,
                                          "description": "First name of the user making the deposit (or representative for business)",
                                          "examples": [
                                            "John",
                                            "Alice",
                                            "Bob"
                                          ]
                                        },
                                        "lastName": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 100,
                                          "description": "Last name of the user making the deposit (or representative for business)",
                                          "examples": [
                                            "Doe",
                                            "Smith",
                                            "Johnson"
                                          ]
                                        },
                                        "userEmail": {
                                          "type": "string",
                                          "maxLength": 254,
                                          "format": "email",
                                          "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                          "description": "Email of the user making the deposit",
                                          "examples": [
                                            "user@virtuabroker.com",
                                            "john.doe@example.com",
                                            "alice@example.com"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "maxLength": 150,
                                          "description": "Address of the user making the deposit",
                                          "examples": [
                                            "123 Main St, Anytown, ES",
                                            "456 Elm St, Anytown, ES",
                                            "789 Oak St, Anytown, ES"
                                          ]
                                        },
                                        "taxDocumentType": {
                                          "type": "string",
                                          "maxLength": 50,
                                          "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                          "examples": [
                                            "CC",
                                            "NIT",
                                            "CE",
                                            "NIF",
                                            "Other"
                                          ]
                                        },
                                        "taxId": {
                                          "type": "string",
                                          "maxLength": 30,
                                          "description": "Tax ID of the user making the deposit",
                                          "examples": [
                                            "123-45-6789",
                                            "987-65-4321",
                                            "111-22-3333"
                                          ]
                                        },
                                        "country": {
                                          "type": "string",
                                          "enum": [
                                            "US",
                                            "CA",
                                            "GB",
                                            "DE",
                                            "FR",
                                            "AU",
                                            "JP",
                                            "KR",
                                            "SE",
                                            "NO",
                                            "DK",
                                            "FI",
                                            "NL",
                                            "BE",
                                            "CH",
                                            "AT",
                                            "NZ",
                                            "SG",
                                            "IE",
                                            "LU",
                                            "PT",
                                            "ES",
                                            "IT",
                                            "GR",
                                            "CZ",
                                            "PL",
                                            "HU",
                                            "SK",
                                            "SI",
                                            "EE",
                                            "LT",
                                            "LV",
                                            "IS",
                                            "MT",
                                            "CY",
                                            "HR",
                                            "RO",
                                            "BG",
                                            "BR",
                                            "AR",
                                            "CL",
                                            "MX",
                                            "CO",
                                            "PE",
                                            "PA",
                                            "UY",
                                            "BO",
                                            "ZA",
                                            "NG",
                                            "KE",
                                            "GH",
                                            "TZ",
                                            "UG",
                                            "RW",
                                            "MW",
                                            "ZM",
                                            "BW",
                                            "CD",
                                            "CI",
                                            "CM",
                                            "IL",
                                            "AE",
                                            "QA",
                                            "SA",
                                            "OM",
                                            "KW",
                                            "BH",
                                            "MY",
                                            "PH",
                                            "TH",
                                            "VN",
                                            "ID",
                                            "IN",
                                            "LK",
                                            "NP",
                                            "BD",
                                            "PK",
                                            "EG",
                                            "MA",
                                            "DZ",
                                            "TN",
                                            "JO",
                                            "LB",
                                            "TR",
                                            "KH",
                                            "MM",
                                            "LA",
                                            "EN",
                                            "BT",
                                            "VE",
                                            "TW",
                                            "HK",
                                            "CN"
                                          ],
                                          "description": "Country code of the user making the deposit",
                                          "examples": [
                                            "ES",
                                            "US",
                                            "GB"
                                          ]
                                        },
                                        "state": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 100,
                                          "description": "State of the user making the deposit",
                                          "examples": [
                                            "Madrid",
                                            "New York",
                                            "London"
                                          ]
                                        },
                                        "postalCode": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 30,
                                          "description": "Postal code of the user making the deposit",
                                          "examples": [
                                            "12345",
                                            "67890",
                                            "abcde"
                                          ]
                                        },
                                        "city": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 100,
                                          "description": "City of the user making the deposit",
                                          "examples": [
                                            "Madrid",
                                            "New York",
                                            "London"
                                          ]
                                        },
                                        "dob": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 30,
                                          "description": "Date of birth of the user making the deposit",
                                          "examples": [
                                            "1990-01-01",
                                            "1995-05-15",
                                            "1988-12-31"
                                          ]
                                        },
                                        "phoneNumber": {
                                          "type": "string",
                                          "maxLength": 30,
                                          "description": "Phone number of the user making the deposit",
                                          "examples": [
                                            "+447700900123",
                                            "+447700900456",
                                            "+447700900789"
                                          ]
                                        },
                                        "kycId": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 300,
                                          "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                          "examples": [
                                            "kyc-12345",
                                            "kyc-67890",
                                            "kyc-abcde"
                                          ]
                                        },
                                        "activity": {
                                          "type": "string",
                                          "description": "Activity of the user making the deposit",
                                          "examples": [
                                            "worker",
                                            "business",
                                            "student"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "userType",
                                        "firstName",
                                        "userEmail",
                                        "country"
                                      ]
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "userType": {
                                          "type": "string",
                                          "enum": [
                                            "business"
                                          ]
                                        },
                                        "businessName": {
                                          "type": "string",
                                          "maxLength": 150,
                                          "description": "Business name (required when userType is business)",
                                          "examples": [
                                            "Acme Corp",
                                            "Tech Solutions Inc",
                                            "Global Services Ltd"
                                          ]
                                        },
                                        "firstName": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 50,
                                          "description": "First name of the user making the deposit (or representative for business)",
                                          "examples": [
                                            "John",
                                            "Alice",
                                            "Bob"
                                          ]
                                        },
                                        "userEmail": {
                                          "type": "string",
                                          "maxLength": 254,
                                          "format": "email",
                                          "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                          "description": "Email of the user making the deposit",
                                          "examples": [
                                            "user@virtuabroker.com",
                                            "john.doe@example.com",
                                            "alice@example.com"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "maxLength": 150,
                                          "description": "Address of the user making the deposit",
                                          "examples": [
                                            "123 Main St, Anytown, ES",
                                            "456 Elm St, Anytown, ES",
                                            "789 Oak St, Anytown, ES"
                                          ]
                                        },
                                        "taxDocumentType": {
                                          "type": "string",
                                          "maxLength": 50,
                                          "description": "Tax document type of the user making the deposit. Common values: DNI, NIE, PASSPORT, CC, NIT, CE, NIF, but any string is accepted.",
                                          "examples": [
                                            "CC",
                                            "NIT",
                                            "CE",
                                            "NIF",
                                            "Other"
                                          ]
                                        },
                                        "taxId": {
                                          "type": "string",
                                          "maxLength": 30,
                                          "description": "Tax ID of the user making the deposit",
                                          "examples": [
                                            "123-45-6789",
                                            "987-65-4321",
                                            "111-22-3333"
                                          ]
                                        },
                                        "country": {
                                          "type": "string",
                                          "enum": [
                                            "US",
                                            "CA",
                                            "GB",
                                            "DE",
                                            "FR",
                                            "AU",
                                            "JP",
                                            "KR",
                                            "SE",
                                            "NO",
                                            "DK",
                                            "FI",
                                            "NL",
                                            "BE",
                                            "CH",
                                            "AT",
                                            "NZ",
                                            "SG",
                                            "IE",
                                            "LU",
                                            "PT",
                                            "ES",
                                            "IT",
                                            "GR",
                                            "CZ",
                                            "PL",
                                            "HU",
                                            "SK",
                                            "SI",
                                            "EE",
                                            "LT",
                                            "LV",
                                            "IS",
                                            "MT",
                                            "CY",
                                            "HR",
                                            "RO",
                                            "BG",
                                            "BR",
                                            "AR",
                                            "CL",
                                            "MX",
                                            "CO",
                                            "PE",
                                            "PA",
                                            "UY",
                                            "BO",
                                            "ZA",
                                            "NG",
                                            "KE",
                                            "GH",
                                            "TZ",
                                            "UG",
                                            "RW",
                                            "MW",
                                            "ZM",
                                            "BW",
                                            "CD",
                                            "CI",
                                            "CM",
                                            "IL",
                                            "AE",
                                            "QA",
                                            "SA",
                                            "OM",
                                            "KW",
                                            "BH",
                                            "MY",
                                            "PH",
                                            "TH",
                                            "VN",
                                            "ID",
                                            "IN",
                                            "LK",
                                            "NP",
                                            "BD",
                                            "PK",
                                            "EG",
                                            "MA",
                                            "DZ",
                                            "TN",
                                            "JO",
                                            "LB",
                                            "TR",
                                            "KH",
                                            "MM",
                                            "LA",
                                            "EN",
                                            "BT",
                                            "VE",
                                            "TW",
                                            "HK",
                                            "CN"
                                          ],
                                          "description": "Country code of the user making the deposit",
                                          "examples": [
                                            "ES",
                                            "US",
                                            "GB"
                                          ]
                                        },
                                        "state": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 100,
                                          "description": "State of the user making the deposit",
                                          "examples": [
                                            "Madrid",
                                            "New York",
                                            "London"
                                          ]
                                        },
                                        "postalCode": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 30,
                                          "description": "Postal code of the user making the deposit",
                                          "examples": [
                                            "12345",
                                            "67890",
                                            "abcde"
                                          ]
                                        },
                                        "city": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 100,
                                          "description": "City of the user making the deposit",
                                          "examples": [
                                            "Madrid",
                                            "New York",
                                            "London"
                                          ]
                                        },
                                        "dob": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 30,
                                          "description": "Date of birth of the user making the deposit",
                                          "examples": [
                                            "1990-01-01",
                                            "1995-05-15",
                                            "1988-12-31"
                                          ]
                                        },
                                        "phoneNumber": {
                                          "type": "string",
                                          "maxLength": 30,
                                          "description": "Phone number of the user making the deposit",
                                          "examples": [
                                            "+447700900123",
                                            "+447700900456",
                                            "+447700900789"
                                          ]
                                        },
                                        "kycId": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 300,
                                          "description": "KYC ID of the user making the deposit on your platform (if the KYC is done by you, add the url)",
                                          "examples": [
                                            "kyc-12345",
                                            "kyc-67890",
                                            "kyc-abcde"
                                          ]
                                        },
                                        "activity": {
                                          "type": "string",
                                          "description": "Activity of the user making the deposit",
                                          "examples": [
                                            "worker",
                                            "business",
                                            "student"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "userType",
                                        "businessName",
                                        "firstName",
                                        "userEmail",
                                        "country"
                                      ]
                                    }
                                  ],
                                  "description": "User data for the withdrawal"
                                },
                                "createdAt": {
                                  "type": "number",
                                  "description": "Creation time of the withdrawal",
                                  "example": 1723027132
                                },
                                "updatedAt": {
                                  "type": "number",
                                  "description": "Last update time of the withdrawal",
                                  "example": 1723027132
                                },
                                "userEmail": {
                                  "type": "string",
                                  "format": "email",
                                  "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                  "description": "Email of the user making the request",
                                  "example": "user@example.com"
                                },
                                "amount": {
                                  "type": "number",
                                  "description": "Amount to be withdrawn. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
                                  "example": 1000
                                },
                                "currency": {
                                  "type": "string",
                                  "description": "Currency of the withdrawal",
                                  "example": "EUR"
                                },
                                "fee": {
                                  "type": "number",
                                  "description": "Fee for the withdrawal. This value is written once the withdrawal has been executed. Meanwhile it will appear 0.",
                                  "example": 10
                                },
                                "feeCurrency": {
                                  "type": "string",
                                  "description": "Currency of the fee",
                                  "example": "EUR"
                                },
                                "destinationTransferData": {
                                  "oneOf": [
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BALANCE"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "Balance transfer details",
                                      "title": "Balance"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "iban": {
                                          "type": "string",
                                          "description": "IBAN number"
                                        },
                                        "bic": {
                                          "type": "string",
                                          "description": "BIC number (optional)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "Country code"
                                        },
                                        "accountType": {
                                          "type": "string",
                                          "enum": [
                                            "PERSONAL",
                                            "BUSINESS"
                                          ],
                                          "default": "PERSONAL",
                                          "description": "Account type (optional)"
                                        },
                                        "city": {
                                          "type": "string",
                                          "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                                        },
                                        "postalCode": {
                                          "type": "string",
                                          "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "SEPA"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "iban",
                                        "country",
                                        "type"
                                      ],
                                      "description": "SEPA transfer details",
                                      "title": "SEPA"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "UK bank account number"
                                        },
                                        "sortCode": {
                                          "type": "string",
                                          "description": "UK sort code"
                                        },
                                        "country": {
                                          "type": "string",
                                          "enum": [
                                            "GB"
                                          ],
                                          "default": "GB",
                                          "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                                        },
                                        "accountType": {
                                          "type": "string",
                                          "enum": [
                                            "PERSONAL",
                                            "BUSINESS"
                                          ],
                                          "default": "PERSONAL",
                                          "description": "Account type (optional)"
                                        },
                                        "city": {
                                          "type": "string",
                                          "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                                        },
                                        "postalCode": {
                                          "type": "string",
                                          "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "GBP_BANK_TRANSFER"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "accountNumber",
                                        "sortCode",
                                        "type"
                                      ],
                                      "description": "GBP domestic bank transfer details",
                                      "title": "BankDepositGB"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "US bank account number"
                                        },
                                        "routingNumber": {
                                          "type": "string",
                                          "description": "US ABA routing number"
                                        },
                                        "country": {
                                          "type": "string",
                                          "enum": [
                                            "US"
                                          ],
                                          "default": "US",
                                          "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                                        },
                                        "accountType": {
                                          "type": "string",
                                          "enum": [
                                            "PERSONAL",
                                            "BUSINESS"
                                          ],
                                          "default": "PERSONAL",
                                          "description": "Account type (optional)"
                                        },
                                        "bankAccountType": {
                                          "type": "string",
                                          "enum": [
                                            "CHECKING",
                                            "SAVINGS"
                                          ],
                                          "default": "CHECKING",
                                          "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                                        },
                                        "city": {
                                          "type": "string",
                                          "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                                        },
                                        "postalCode": {
                                          "type": "string",
                                          "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                                        },
                                        "state": {
                                          "type": "string",
                                          "pattern": "^[A-Z]{2}$",
                                          "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "ACH_US"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "accountNumber",
                                        "routingNumber",
                                        "state",
                                        "type"
                                      ],
                                      "description": "USD ACH transfer details",
                                      "title": "AchUS"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "linkedBankAccount"
                                          ]
                                        },
                                        "accountLinkId": {
                                          "type": "string",
                                          "pattern": "^alnk_[0-9a-f]{24}$",
                                          "description": "Identifier of one of the account holder own linked bank accounts",
                                          "examples": [
                                            "alnk_0123456789abcdef01234567"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "accountLinkId"
                                      ],
                                      "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                                      "title": "LinkedBankAccount",
                                      "deprecated": true
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "ETH"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Memo for the wallet, when the chain uses one"
                                        },
                                        "txId": {
                                          "type": "string",
                                          "description": "Blockchain transaction ID"
                                        },
                                        "txUrlScan": {
                                          "type": "string",
                                          "description": "Blockchain explorer URL for the transaction"
                                        },
                                        "destinationWalletAddress": {
                                          "type": "string",
                                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                        },
                                        "destinationWalletMemo": {
                                          "type": "string",
                                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                        },
                                        "destinationNetwork": {
                                          "type": "string",
                                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                        },
                                        "destinationCurrencySymbol": {
                                          "type": "string",
                                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "ETH destination details",
                                      "anyOf": [
                                        {
                                          "required": [
                                            "address"
                                          ],
                                          "properties": {
                                            "address": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        },
                                        {
                                          "required": [
                                            "destinationWalletAddress"
                                          ],
                                          "properties": {
                                            "destinationWalletAddress": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        }
                                      ],
                                      "title": "ETH"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MATIC"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Memo for the wallet, when the chain uses one"
                                        },
                                        "txId": {
                                          "type": "string",
                                          "description": "Blockchain transaction ID"
                                        },
                                        "txUrlScan": {
                                          "type": "string",
                                          "description": "Blockchain explorer URL for the transaction"
                                        },
                                        "destinationWalletAddress": {
                                          "type": "string",
                                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                        },
                                        "destinationWalletMemo": {
                                          "type": "string",
                                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                        },
                                        "destinationNetwork": {
                                          "type": "string",
                                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                        },
                                        "destinationCurrencySymbol": {
                                          "type": "string",
                                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "MATIC destination details",
                                      "anyOf": [
                                        {
                                          "required": [
                                            "address"
                                          ],
                                          "properties": {
                                            "address": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        },
                                        {
                                          "required": [
                                            "destinationWalletAddress"
                                          ],
                                          "properties": {
                                            "destinationWalletAddress": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        }
                                      ],
                                      "title": "MATIC"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "SOL"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Memo for the wallet, when the chain uses one"
                                        },
                                        "txId": {
                                          "type": "string",
                                          "description": "Blockchain transaction ID"
                                        },
                                        "txUrlScan": {
                                          "type": "string",
                                          "description": "Blockchain explorer URL for the transaction"
                                        },
                                        "destinationWalletAddress": {
                                          "type": "string",
                                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                        },
                                        "destinationWalletMemo": {
                                          "type": "string",
                                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                        },
                                        "destinationNetwork": {
                                          "type": "string",
                                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                        },
                                        "destinationCurrencySymbol": {
                                          "type": "string",
                                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "SOL destination details",
                                      "anyOf": [
                                        {
                                          "required": [
                                            "address"
                                          ],
                                          "properties": {
                                            "address": {
                                              "pattern": "\\S"
                                            }
                                          }
                                        },
                                        {
                                          "required": [
                                            "destinationWalletAddress"
                                          ],
                                          "properties": {
                                            "destinationWalletAddress": {
                                              "pattern": "\\S"
                                            }
                                          }
                                        }
                                      ],
                                      "title": "SOL"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "TRON"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Memo for the wallet, when the chain uses one"
                                        },
                                        "txId": {
                                          "type": "string",
                                          "description": "Blockchain transaction ID"
                                        },
                                        "txUrlScan": {
                                          "type": "string",
                                          "description": "Blockchain explorer URL for the transaction"
                                        },
                                        "destinationWalletAddress": {
                                          "type": "string",
                                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                        },
                                        "destinationWalletMemo": {
                                          "type": "string",
                                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                        },
                                        "destinationNetwork": {
                                          "type": "string",
                                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                        },
                                        "destinationCurrencySymbol": {
                                          "type": "string",
                                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "TRON destination details",
                                      "anyOf": [
                                        {
                                          "required": [
                                            "address"
                                          ],
                                          "properties": {
                                            "address": {
                                              "pattern": "\\S"
                                            }
                                          }
                                        },
                                        {
                                          "required": [
                                            "destinationWalletAddress"
                                          ],
                                          "properties": {
                                            "destinationWalletAddress": {
                                              "pattern": "\\S"
                                            }
                                          }
                                        }
                                      ],
                                      "title": "TRON"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "CELO"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Memo for the wallet, when the chain uses one"
                                        },
                                        "txId": {
                                          "type": "string",
                                          "description": "Blockchain transaction ID"
                                        },
                                        "txUrlScan": {
                                          "type": "string",
                                          "description": "Blockchain explorer URL for the transaction"
                                        },
                                        "destinationWalletAddress": {
                                          "type": "string",
                                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                        },
                                        "destinationWalletMemo": {
                                          "type": "string",
                                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                        },
                                        "destinationNetwork": {
                                          "type": "string",
                                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                        },
                                        "destinationCurrencySymbol": {
                                          "type": "string",
                                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "CELO destination details",
                                      "anyOf": [
                                        {
                                          "required": [
                                            "address"
                                          ],
                                          "properties": {
                                            "address": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        },
                                        {
                                          "required": [
                                            "destinationWalletAddress"
                                          ],
                                          "properties": {
                                            "destinationWalletAddress": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        }
                                      ],
                                      "title": "CELO"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BTC"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Memo for the wallet, when the chain uses one"
                                        },
                                        "txId": {
                                          "type": "string",
                                          "description": "Blockchain transaction ID"
                                        },
                                        "txUrlScan": {
                                          "type": "string",
                                          "description": "Blockchain explorer URL for the transaction"
                                        },
                                        "destinationWalletAddress": {
                                          "type": "string",
                                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                        },
                                        "destinationWalletMemo": {
                                          "type": "string",
                                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                        },
                                        "destinationNetwork": {
                                          "type": "string",
                                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                        },
                                        "destinationCurrencySymbol": {
                                          "type": "string",
                                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "BTC destination details",
                                      "anyOf": [
                                        {
                                          "required": [
                                            "address"
                                          ],
                                          "properties": {
                                            "address": {
                                              "pattern": "\\S"
                                            }
                                          }
                                        },
                                        {
                                          "required": [
                                            "destinationWalletAddress"
                                          ],
                                          "properties": {
                                            "destinationWalletAddress": {
                                              "pattern": "\\S"
                                            }
                                          }
                                        }
                                      ],
                                      "title": "BTC"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "SOLANA"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Memo for the wallet, when the chain uses one"
                                        },
                                        "txId": {
                                          "type": "string",
                                          "description": "Blockchain transaction ID"
                                        },
                                        "txUrlScan": {
                                          "type": "string",
                                          "description": "Blockchain explorer URL for the transaction"
                                        },
                                        "destinationWalletAddress": {
                                          "type": "string",
                                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                        },
                                        "destinationWalletMemo": {
                                          "type": "string",
                                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                        },
                                        "destinationNetwork": {
                                          "type": "string",
                                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                        },
                                        "destinationCurrencySymbol": {
                                          "type": "string",
                                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "SOLANA destination details",
                                      "anyOf": [
                                        {
                                          "required": [
                                            "address"
                                          ],
                                          "properties": {
                                            "address": {
                                              "pattern": "\\S"
                                            }
                                          }
                                        },
                                        {
                                          "required": [
                                            "destinationWalletAddress"
                                          ],
                                          "properties": {
                                            "destinationWalletAddress": {
                                              "pattern": "\\S"
                                            }
                                          }
                                        }
                                      ],
                                      "title": "SOLANA"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "XRP"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Memo for the wallet, when the chain uses one"
                                        },
                                        "txId": {
                                          "type": "string",
                                          "description": "Blockchain transaction ID"
                                        },
                                        "txUrlScan": {
                                          "type": "string",
                                          "description": "Blockchain explorer URL for the transaction"
                                        },
                                        "destinationWalletAddress": {
                                          "type": "string",
                                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                        },
                                        "destinationWalletMemo": {
                                          "type": "string",
                                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                        },
                                        "destinationNetwork": {
                                          "type": "string",
                                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                        },
                                        "destinationCurrencySymbol": {
                                          "type": "string",
                                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "XRP destination details",
                                      "anyOf": [
                                        {
                                          "required": [
                                            "address"
                                          ],
                                          "properties": {
                                            "address": {
                                              "pattern": "\\S"
                                            }
                                          }
                                        },
                                        {
                                          "required": [
                                            "destinationWalletAddress"
                                          ],
                                          "properties": {
                                            "destinationWalletAddress": {
                                              "pattern": "\\S"
                                            }
                                          }
                                        }
                                      ],
                                      "title": "XRP"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "CARDANO"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Memo for the wallet, when the chain uses one"
                                        },
                                        "txId": {
                                          "type": "string",
                                          "description": "Blockchain transaction ID"
                                        },
                                        "txUrlScan": {
                                          "type": "string",
                                          "description": "Blockchain explorer URL for the transaction"
                                        },
                                        "destinationWalletAddress": {
                                          "type": "string",
                                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                        },
                                        "destinationWalletMemo": {
                                          "type": "string",
                                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                        },
                                        "destinationNetwork": {
                                          "type": "string",
                                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                        },
                                        "destinationCurrencySymbol": {
                                          "type": "string",
                                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "CARDANO destination details",
                                      "anyOf": [
                                        {
                                          "required": [
                                            "address"
                                          ],
                                          "properties": {
                                            "address": {
                                              "pattern": "\\S"
                                            }
                                          }
                                        },
                                        {
                                          "required": [
                                            "destinationWalletAddress"
                                          ],
                                          "properties": {
                                            "destinationWalletAddress": {
                                              "pattern": "\\S"
                                            }
                                          }
                                        }
                                      ],
                                      "title": "CARDANO"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BSC"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Memo for the wallet, when the chain uses one"
                                        },
                                        "txId": {
                                          "type": "string",
                                          "description": "Blockchain transaction ID"
                                        },
                                        "txUrlScan": {
                                          "type": "string",
                                          "description": "Blockchain explorer URL for the transaction"
                                        },
                                        "destinationWalletAddress": {
                                          "type": "string",
                                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                        },
                                        "destinationWalletMemo": {
                                          "type": "string",
                                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                        },
                                        "destinationNetwork": {
                                          "type": "string",
                                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                        },
                                        "destinationCurrencySymbol": {
                                          "type": "string",
                                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "BSC destination details",
                                      "anyOf": [
                                        {
                                          "required": [
                                            "address"
                                          ],
                                          "properties": {
                                            "address": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        },
                                        {
                                          "required": [
                                            "destinationWalletAddress"
                                          ],
                                          "properties": {
                                            "destinationWalletAddress": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        }
                                      ],
                                      "title": "BSC"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "ARBITRUM"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Memo for the wallet, when the chain uses one"
                                        },
                                        "txId": {
                                          "type": "string",
                                          "description": "Blockchain transaction ID"
                                        },
                                        "txUrlScan": {
                                          "type": "string",
                                          "description": "Blockchain explorer URL for the transaction"
                                        },
                                        "destinationWalletAddress": {
                                          "type": "string",
                                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                        },
                                        "destinationWalletMemo": {
                                          "type": "string",
                                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                        },
                                        "destinationNetwork": {
                                          "type": "string",
                                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                        },
                                        "destinationCurrencySymbol": {
                                          "type": "string",
                                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "ARBITRUM destination details",
                                      "anyOf": [
                                        {
                                          "required": [
                                            "address"
                                          ],
                                          "properties": {
                                            "address": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        },
                                        {
                                          "required": [
                                            "destinationWalletAddress"
                                          ],
                                          "properties": {
                                            "destinationWalletAddress": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        }
                                      ],
                                      "title": "ARBITRUM"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "OPTIMISM"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Memo for the wallet, when the chain uses one"
                                        },
                                        "txId": {
                                          "type": "string",
                                          "description": "Blockchain transaction ID"
                                        },
                                        "txUrlScan": {
                                          "type": "string",
                                          "description": "Blockchain explorer URL for the transaction"
                                        },
                                        "destinationWalletAddress": {
                                          "type": "string",
                                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                        },
                                        "destinationWalletMemo": {
                                          "type": "string",
                                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                        },
                                        "destinationNetwork": {
                                          "type": "string",
                                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                        },
                                        "destinationCurrencySymbol": {
                                          "type": "string",
                                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "OPTIMISM destination details",
                                      "anyOf": [
                                        {
                                          "required": [
                                            "address"
                                          ],
                                          "properties": {
                                            "address": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        },
                                        {
                                          "required": [
                                            "destinationWalletAddress"
                                          ],
                                          "properties": {
                                            "destinationWalletAddress": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        }
                                      ],
                                      "title": "OPTIMISM"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "AVALANCHE"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Memo for the wallet, when the chain uses one"
                                        },
                                        "txId": {
                                          "type": "string",
                                          "description": "Blockchain transaction ID"
                                        },
                                        "txUrlScan": {
                                          "type": "string",
                                          "description": "Blockchain explorer URL for the transaction"
                                        },
                                        "destinationWalletAddress": {
                                          "type": "string",
                                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                        },
                                        "destinationWalletMemo": {
                                          "type": "string",
                                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                        },
                                        "destinationNetwork": {
                                          "type": "string",
                                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                        },
                                        "destinationCurrencySymbol": {
                                          "type": "string",
                                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "AVALANCHE destination details",
                                      "anyOf": [
                                        {
                                          "required": [
                                            "address"
                                          ],
                                          "properties": {
                                            "address": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        },
                                        {
                                          "required": [
                                            "destinationWalletAddress"
                                          ],
                                          "properties": {
                                            "destinationWalletAddress": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        }
                                      ],
                                      "title": "AVALANCHE"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BASE"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Memo for the wallet, when the chain uses one"
                                        },
                                        "txId": {
                                          "type": "string",
                                          "description": "Blockchain transaction ID"
                                        },
                                        "txUrlScan": {
                                          "type": "string",
                                          "description": "Blockchain explorer URL for the transaction"
                                        },
                                        "destinationWalletAddress": {
                                          "type": "string",
                                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                        },
                                        "destinationWalletMemo": {
                                          "type": "string",
                                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                        },
                                        "destinationNetwork": {
                                          "type": "string",
                                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                        },
                                        "destinationCurrencySymbol": {
                                          "type": "string",
                                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "BASE destination details",
                                      "anyOf": [
                                        {
                                          "required": [
                                            "address"
                                          ],
                                          "properties": {
                                            "address": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        },
                                        {
                                          "required": [
                                            "destinationWalletAddress"
                                          ],
                                          "properties": {
                                            "destinationWalletAddress": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        }
                                      ],
                                      "title": "BASE"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_COL"
                                          ]
                                        },
                                        "destinationBankCode": {
                                          "type": "string",
                                          "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                                        },
                                        "destinationBankAccountType": {
                                          "type": "string",
                                          "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "description": "Recipient ID document number. Required when creating or updating a destination."
                                        },
                                        "destinationDocumentType": {
                                          "type": "string",
                                          "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                                      "title": "Bank Deposit COL"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "brebKey": {
                                          "type": "string",
                                          "minLength": 1,
                                          "description": "Bre-B key (llave) that identifies the recipient account"
                                        },
                                        "email": {
                                          "type": "string",
                                          "description": "Recipient email (optional contact for the Bre-B rail)"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Recipient phone number (optional contact for the Bre-B rail)"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BRE_B_COP"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "brebKey",
                                        "type"
                                      ],
                                      "description": "Colombian Bre-B payout details",
                                      "title": "Bre-B COP"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankCode": {
                                          "type": "string",
                                          "pattern": "^\\d{4}$",
                                          "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                                        },
                                        "destinationBankAccountNumber": {
                                          "type": "string",
                                          "minLength": 1,
                                          "description": "Recipient bank account number"
                                        },
                                        "destinationBankAccountType": {
                                          "type": "string",
                                          "minLength": 1,
                                          "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                                        },
                                        "destinationDocumentType": {
                                          "type": "string",
                                          "minLength": 1,
                                          "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "minLength": 1,
                                          "description": "Recipient ID document number"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "ACH_COP"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankCode",
                                        "destinationBankAccountNumber",
                                        "destinationBankAccountType",
                                        "destinationDocumentType",
                                        "destinationTaxId",
                                        "type"
                                      ],
                                      "description": "Colombian ACH payout details",
                                      "title": "ACH COP"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (unused for TWD — no network discovery)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "minLength": 2,
                                          "description": "Bank name (required — TWD payouts run over SWIFT)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_TW"
                                          ]
                                        },
                                        "destinationBankBranch": {
                                          "type": "string",
                                          "minLength": 2,
                                          "description": "Bank branch (required — TWD payouts run over SWIFT)"
                                        },
                                        "bic": {
                                          "type": "string",
                                          "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                                          "description": "SWIFT BIC code (required for TWD payouts)"
                                        },
                                        "destinationBankAccountType": {
                                          "type": "string",
                                          "description": "Type of bank account (legacy, optional)"
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "description": "Tax ID of the recipient (legacy, optional)"
                                        },
                                        "destinationDocumentType": {
                                          "type": "string",
                                          "description": "Document type of the recipient (legacy, optional)"
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "destinationBankName",
                                        "type",
                                        "destinationBankBranch",
                                        "bic"
                                      ],
                                      "description": "Taiwan bank deposit details (SWIFT payout)",
                                      "title": "Bank Deposit TW"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankCode": {
                                          "type": "string",
                                          "description": "Bank code"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationBankBranch": {
                                          "type": "string",
                                          "description": "Bank branch"
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "description": "Tax ID of the recipient"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_BR"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankCode",
                                        "destinationBankAccount",
                                        "destinationBankBranch",
                                        "destinationTaxId",
                                        "type"
                                      ],
                                      "description": "Brazilian bank deposit details",
                                      "title": "Bank Deposit BR"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPixCode": {
                                          "type": "string",
                                          "description": "PIX code"
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "description": "Tax ID of the recipient"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "PIX_BR"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPixCode",
                                        "destinationTaxId",
                                        "type"
                                      ],
                                      "description": "Brazilian PIX details",
                                      "title": "PIX BR"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccountNumber": {
                                          "type": "string",
                                          "description": "Bank account number"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Name of the bank"
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                                          "description": "Tax ID of the recipient"
                                        },
                                        "destinationBankAccountType": {
                                          "type": "string",
                                          "description": "Type of bank account"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_VEN"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccountNumber",
                                        "destinationBankName",
                                        "destinationTaxId",
                                        "destinationBankAccountType",
                                        "type"
                                      ],
                                      "description": "Venezuelan bank deposit details",
                                      "title": "Bank Deposit VEN"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankCode": {
                                          "type": "string",
                                          "description": "Bank code"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                                          "description": "Tax ID of the recipient"
                                        },
                                        "destinationBankAccountType": {
                                          "type": "string",
                                          "description": "Type of bank account"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "PHONE_DEPOSIT_VEN"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankCode",
                                        "destinationPhoneNumber",
                                        "destinationTaxId",
                                        "destinationBankAccountType",
                                        "type"
                                      ],
                                      "description": "Venezuelan phone deposit details",
                                      "title": "Phone Deposit VEN"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationIFSC": {
                                          "type": "string",
                                          "description": "IFSC code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_IN"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                      "title": "Bank Deposit IN",
                                      "deprecated": true
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationIFSC": {
                                          "type": "string",
                                          "description": "IFSC code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "IMPS"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                      "title": "IMPS",
                                      "deprecated": true
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationIFSC": {
                                          "type": "string",
                                          "description": "IFSC code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "THAI_QR"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                      "title": "Thai QR",
                                      "deprecated": true
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationIFSC": {
                                          "type": "string",
                                          "description": "IFSC code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "VIET_QR"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                      "title": "Viet QR",
                                      "deprecated": true
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationIFSC": {
                                          "type": "string",
                                          "description": "IFSC code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "GCASH"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                      "title": "GCash",
                                      "deprecated": true
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "description": "Tax ID"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_PAYMENT_IN"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPhoneNumber",
                                        "destinationTaxId",
                                        "type"
                                      ],
                                      "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                      "title": "Mobile Payment IN",
                                      "deprecated": true
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationBankCode": {
                                          "type": "string",
                                          "description": "Bank code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_VN"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "destinationBankCode",
                                        "type"
                                      ],
                                      "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                      "title": "Bank Deposit VN",
                                      "deprecated": true
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "bic": {
                                          "type": "string",
                                          "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "destinationAddress": {
                                          "type": "string",
                                          "description": "Address line 1 of the recipient"
                                        },
                                        "destinationCity": {
                                          "type": "string",
                                          "description": "Recipient city (defaults to Hong Kong)"
                                        },
                                        "accountHolderName": {
                                          "type": "string",
                                          "description": "Bank account holder name if different from payee"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_HK"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "bic",
                                        "destinationBankName",
                                        "destinationAddress",
                                        "type"
                                      ],
                                      "description": "Hong Kong bank deposit details (HKD bank corridor)",
                                      "title": "Bank Deposit HK"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationBankCode": {
                                          "type": "string",
                                          "pattern": "^\\d+$",
                                          "description": "CNAPS / bank institution code (numeric, variable length)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "destinationAddress": {
                                          "type": "string",
                                          "description": "Address line 1 of the recipient"
                                        },
                                        "destinationCity": {
                                          "type": "string",
                                          "description": "Recipient city"
                                        },
                                        "destinationState": {
                                          "type": "string",
                                          "minLength": 1,
                                          "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                                        },
                                        "destinationPostcode": {
                                          "type": "string",
                                          "minLength": 1,
                                          "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                                        },
                                        "destinationPhone": {
                                          "type": "string",
                                          "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                                        },
                                        "accountHolderName": {
                                          "type": "string",
                                          "description": "Bank account holder name if different from payee"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_CN"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "destinationBankCode",
                                        "destinationBankName",
                                        "destinationAddress",
                                        "destinationCity",
                                        "destinationState",
                                        "destinationPostcode",
                                        "type"
                                      ],
                                      "description": "China mainland bank deposit details (CNY bank corridor)",
                                      "title": "Bank Deposit CN"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_AR"
                                          ]
                                        },
                                        "destinationCBU": {
                                          "type": "string",
                                          "description": "CBU — 22-digit bank account key (legacy, optional)"
                                        },
                                        "destinationCVU": {
                                          "type": "string",
                                          "description": "CVU — 22-digit virtual account key (legacy, optional)"
                                        },
                                        "destinationAlias": {
                                          "type": "string",
                                          "description": "Account alias (legacy, optional)"
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                                        },
                                        "destinationDocumentType": {
                                          "type": "string",
                                          "description": "Document type of the recipient (legacy, optional)"
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Argentinian bank deposit details",
                                      "title": "Bank Deposit AR"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationBankName is given)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "minLength": 1,
                                          "description": "Recipient bank name (required for Chilean bank payouts)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_CL"
                                          ]
                                        },
                                        "destinationBankAccountType": {
                                          "type": "string",
                                          "minLength": 1,
                                          "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "minLength": 1,
                                          "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                                        },
                                        "destinationDocumentType": {
                                          "type": "string",
                                          "description": "Document type of the recipient (legacy, optional)"
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "destinationBankName",
                                        "type",
                                        "destinationBankAccountType",
                                        "destinationTaxId"
                                      ],
                                      "description": "Chilean bank deposit details",
                                      "title": "Bank Deposit CL"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "minLength": 2,
                                          "maxLength": 30,
                                          "description": "Recipient name (required, 2–30 characters)"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 11,
                                          "description": "Bank account number (max 11 digits for Bolivian accounts)"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (unused for BOB — no network discovery)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "maxLength": 20,
                                          "description": "Bank name (optional, max 20 characters)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_BO"
                                          ]
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 15,
                                          "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type",
                                        "destinationTaxId"
                                      ],
                                      "description": "Bolivian bank deposit details",
                                      "title": "Bank Deposit BO"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_PE"
                                          ]
                                        },
                                        "destinationCCI": {
                                          "type": "string",
                                          "description": "CCI — 20-digit interbank account code (legacy, optional)"
                                        },
                                        "destinationBankAccountType": {
                                          "type": "string",
                                          "description": "Account type (corriente/ahorro) (legacy, optional)"
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                                        },
                                        "destinationDocumentType": {
                                          "type": "string",
                                          "description": "Document type of the recipient (legacy, optional)"
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "destinationNetworkId",
                                        "type"
                                      ],
                                      "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                      "title": "Bank Deposit PE",
                                      "deprecated": true
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankCode": {
                                          "type": "string",
                                          "pattern": "^\\d{3}$",
                                          "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                                        },
                                        "destinationBankAccountNumber": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 20,
                                          "description": "Recipient bank account number (max 20)"
                                        },
                                        "destinationBankAccountType": {
                                          "type": "string",
                                          "enum": [
                                            "CORRIENTE",
                                            "AHORROS",
                                            "PHONE"
                                          ],
                                          "description": "Bank account type"
                                        },
                                        "destinationCCI": {
                                          "type": "string",
                                          "pattern": "^\\d{1,20}$",
                                          "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                                        },
                                        "destinationDocumentType": {
                                          "type": "string",
                                          "enum": [
                                            "CC",
                                            "CE",
                                            "RUC",
                                            "PAS",
                                            "PAR",
                                            "LMI",
                                            "OTHER"
                                          ],
                                          "description": "Recipient identification type"
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 50,
                                          "description": "Recipient identification number (max 50)"
                                        },
                                        "email": {
                                          "type": "string",
                                          "pattern": "^.+@.+\\..+$",
                                          "description": "Recipient email (required for PEN payouts)"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "pattern": "^\\d{1,9}$",
                                          "description": "Recipient phone number (required, max 9 digits)"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_PEN"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankCode",
                                        "destinationBankAccountNumber",
                                        "destinationBankAccountType",
                                        "destinationCCI",
                                        "destinationDocumentType",
                                        "destinationTaxId",
                                        "email",
                                        "destinationPhoneNumber",
                                        "type"
                                      ],
                                      "description": "Peruvian bank deposit details (bank-code payout corridor).",
                                      "title": "Bank Deposit PEN"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationBankName is given)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_NG"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Nigeria bank deposit details",
                                      "title": "Bank Deposit NG"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationBankName is given)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_KE"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Kenya bank deposit details",
                                      "title": "Bank Deposit KE"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationBankName is given)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_GH"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                      "title": "Bank Deposit GH",
                                      "deprecated": true
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationBankName is given)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_ZA"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "South Africa bank deposit details",
                                      "title": "Bank Deposit ZA"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationBankName is given)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_TZ"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Tanzania bank deposit details",
                                      "title": "Bank Deposit TZ"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationBankName is given)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_UG"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Uganda bank deposit details",
                                      "title": "Bank Deposit UG"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationBankName is given)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_RW"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Rwanda bank deposit details",
                                      "title": "Bank Deposit RW"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationBankName is given)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_MW"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Malawi bank deposit details",
                                      "title": "Bank Deposit MW"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationBankName is given)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_ZM"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Zambia bank deposit details",
                                      "title": "Bank Deposit ZM"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationBankName is given)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_BW"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Botswana bank deposit details",
                                      "title": "Bank Deposit BW"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationBankName is given)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_CD"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                      "title": "Bank Deposit CD",
                                      "deprecated": true
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationBankName is given)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_XOF"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "West African CFA bank deposit details",
                                      "title": "Bank Deposit XOF"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationBankName is given)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_XAF"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Central African CFA bank deposit details",
                                      "title": "Bank Deposit XAF"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationNetworkName is given)"
                                        },
                                        "destinationNetworkName": {
                                          "type": "string",
                                          "description": "Mobile money network name (resolves the network when id omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_NG"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPhoneNumber",
                                        "type"
                                      ],
                                      "description": "Nigeria mobile money details",
                                      "title": "Mobile Money NG"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationNetworkName is given)"
                                        },
                                        "destinationNetworkName": {
                                          "type": "string",
                                          "description": "Mobile money network name (resolves the network when id omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_KE"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPhoneNumber",
                                        "type"
                                      ],
                                      "description": "Kenya mobile money details",
                                      "title": "Mobile Money KE"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationNetworkName is given)"
                                        },
                                        "destinationNetworkName": {
                                          "type": "string",
                                          "description": "Mobile money network name (resolves the network when id omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_GH"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPhoneNumber",
                                        "type"
                                      ],
                                      "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                      "title": "Mobile Money GH",
                                      "deprecated": true
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationNetworkName is given)"
                                        },
                                        "destinationNetworkName": {
                                          "type": "string",
                                          "description": "Mobile money network name (resolves the network when id omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_ZA"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPhoneNumber",
                                        "type"
                                      ],
                                      "description": "South Africa mobile money details",
                                      "title": "Mobile Money ZA"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationNetworkName is given)"
                                        },
                                        "destinationNetworkName": {
                                          "type": "string",
                                          "description": "Mobile money network name (resolves the network when id omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_TZ"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPhoneNumber",
                                        "type"
                                      ],
                                      "description": "Tanzania mobile money details",
                                      "title": "Mobile Money TZ"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationNetworkName is given)"
                                        },
                                        "destinationNetworkName": {
                                          "type": "string",
                                          "description": "Mobile money network name (resolves the network when id omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_UG"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPhoneNumber",
                                        "type"
                                      ],
                                      "description": "Uganda mobile money details",
                                      "title": "Mobile Money UG"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationNetworkName is given)"
                                        },
                                        "destinationNetworkName": {
                                          "type": "string",
                                          "description": "Mobile money network name (resolves the network when id omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_RW"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPhoneNumber",
                                        "type"
                                      ],
                                      "description": "Rwanda mobile money details",
                                      "title": "Mobile Money RW"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationNetworkName is given)"
                                        },
                                        "destinationNetworkName": {
                                          "type": "string",
                                          "description": "Mobile money network name (resolves the network when id omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_MW"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPhoneNumber",
                                        "type"
                                      ],
                                      "description": "Malawi mobile money details",
                                      "title": "Mobile Money MW"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationNetworkName is given)"
                                        },
                                        "destinationNetworkName": {
                                          "type": "string",
                                          "description": "Mobile money network name (resolves the network when id omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_ZM"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPhoneNumber",
                                        "type"
                                      ],
                                      "description": "Zambia mobile money details",
                                      "title": "Mobile Money ZM"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationNetworkName is given)"
                                        },
                                        "destinationNetworkName": {
                                          "type": "string",
                                          "description": "Mobile money network name (resolves the network when id omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_BW"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPhoneNumber",
                                        "type"
                                      ],
                                      "description": "Botswana mobile money details",
                                      "title": "Mobile Money BW"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationNetworkName is given)"
                                        },
                                        "destinationNetworkName": {
                                          "type": "string",
                                          "description": "Mobile money network name (resolves the network when id omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_CD"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPhoneNumber",
                                        "type"
                                      ],
                                      "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                      "title": "Mobile Money CD",
                                      "deprecated": true
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationNetworkName is given)"
                                        },
                                        "destinationNetworkName": {
                                          "type": "string",
                                          "description": "Mobile money network name (resolves the network when id omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_XOF"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPhoneNumber",
                                        "type"
                                      ],
                                      "description": "West African CFA mobile money details",
                                      "title": "Mobile Money XOF"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationNetworkName is given)"
                                        },
                                        "destinationNetworkName": {
                                          "type": "string",
                                          "description": "Mobile money network name (resolves the network when id omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_XAF"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPhoneNumber",
                                        "type"
                                      ],
                                      "description": "Central African CFA mobile money details",
                                      "title": "Mobile Money XAF"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankCode": {
                                          "type": "string",
                                          "description": "Bank code"
                                        },
                                        "destinationBankAccountNumber": {
                                          "type": "string",
                                          "description": "Bank account number (18-digit CLABE)"
                                        },
                                        "numericReference": {
                                          "type": "string",
                                          "description": "Numeric reference"
                                        },
                                        "notesReference": {
                                          "type": "string",
                                          "description": "Notes reference"
                                        },
                                        "destinationClabe": {
                                          "type": "string",
                                          "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_MX"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccountNumber",
                                        "type"
                                      ],
                                      "description": "Mexican bank deposit details",
                                      "title": "Bank Deposit MX"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPseNumber": {
                                          "type": "string",
                                          "description": "PSE number"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "PSE"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPseNumber",
                                        "type"
                                      ],
                                      "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                      "title": "PSE",
                                      "deprecated": true
                                    }
                                  ],
                                  "description": "The details required for the end user destination transfer method."
                                },
                                "status": {
                                  "anyOf": [
                                    {
                                      "type": "string",
                                      "enum": [
                                        "Pending",
                                        "Processing",
                                        "Success",
                                        "Failed",
                                        "Canceled",
                                        "Reviewing"
                                      ],
                                      "description": "Common status values that are shared across all operation types",
                                      "examples": [
                                        "Pending",
                                        "Processing",
                                        "Success",
                                        "Failed",
                                        "Canceled",
                                        "Reviewing"
                                      ]
                                    },
                                    {
                                      "type": "string",
                                      "enum": [
                                        "PendingCancel",
                                        "PendingWithdrawal",
                                        "PendingVerification",
                                        "Pending2FA",
                                        "Compliance",
                                        "Accepted",
                                        "Approved",
                                        "Rejected",
                                        "Review"
                                      ]
                                    }
                                  ],
                                  "description": "Status of the withdrawal",
                                  "examples": [
                                    "Pending",
                                    "Pending2FA",
                                    "Compliance",
                                    "Accepted",
                                    "Approved",
                                    "Success",
                                    "Failed",
                                    "Review",
                                    "Rejected"
                                  ]
                                },
                                "withdrawalInfo": {
                                  "oneOf": [
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BALANCE"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "Balance transfer details",
                                      "title": "Balance"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "iban": {
                                          "type": "string",
                                          "description": "IBAN number"
                                        },
                                        "bic": {
                                          "type": "string",
                                          "description": "BIC number (optional)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "Country code"
                                        },
                                        "accountType": {
                                          "type": "string",
                                          "enum": [
                                            "PERSONAL",
                                            "BUSINESS"
                                          ],
                                          "default": "PERSONAL",
                                          "description": "Account type (optional)"
                                        },
                                        "city": {
                                          "type": "string",
                                          "description": "City of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.city."
                                        },
                                        "postalCode": {
                                          "type": "string",
                                          "description": "Postal code of the recipient. REQUIRED for SEPA payouts — provide it here or in destinationUserData.postalCode."
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Street address (line 1) of the recipient. Forwarded as the payout beneficiary `address.line1` when registering the beneficiary. Stored on the saved transaction method so the user does not have to re-supply it on every withdraw."
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "SEPA"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "iban",
                                        "country",
                                        "type"
                                      ],
                                      "description": "SEPA transfer details",
                                      "title": "SEPA"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "UK bank account number"
                                        },
                                        "sortCode": {
                                          "type": "string",
                                          "description": "UK sort code"
                                        },
                                        "country": {
                                          "type": "string",
                                          "enum": [
                                            "GB"
                                          ],
                                          "default": "GB",
                                          "description": "ISO 3166 country code of the recipient (GBP transfer is UK-based)"
                                        },
                                        "accountType": {
                                          "type": "string",
                                          "enum": [
                                            "PERSONAL",
                                            "BUSINESS"
                                          ],
                                          "default": "PERSONAL",
                                          "description": "Account type (optional)"
                                        },
                                        "city": {
                                          "type": "string",
                                          "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                                        },
                                        "postalCode": {
                                          "type": "string",
                                          "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "GBP_BANK_TRANSFER"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "accountNumber",
                                        "sortCode",
                                        "type"
                                      ],
                                      "description": "GBP domestic bank transfer details",
                                      "title": "BankDepositGB"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "accountNumber": {
                                          "type": "string",
                                          "description": "US bank account number"
                                        },
                                        "routingNumber": {
                                          "type": "string",
                                          "description": "US ABA routing number"
                                        },
                                        "country": {
                                          "type": "string",
                                          "enum": [
                                            "US"
                                          ],
                                          "default": "US",
                                          "description": "ISO 3166 country code of the recipient (ACH is US-domestic)"
                                        },
                                        "accountType": {
                                          "type": "string",
                                          "enum": [
                                            "PERSONAL",
                                            "BUSINESS"
                                          ],
                                          "default": "PERSONAL",
                                          "description": "Account type (optional)"
                                        },
                                        "bankAccountType": {
                                          "type": "string",
                                          "enum": [
                                            "CHECKING",
                                            "SAVINGS"
                                          ],
                                          "default": "CHECKING",
                                          "description": "Kind of bank account the payout lands in. Defaults to CHECKING when omitted."
                                        },
                                        "city": {
                                          "type": "string",
                                          "description": "City of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.city."
                                        },
                                        "postalCode": {
                                          "type": "string",
                                          "description": "Postal code of the recipient. REQUIRED for this rail — provide it here or in destinationUserData.postalCode."
                                        },
                                        "state": {
                                          "type": "string",
                                          "pattern": "^[A-Z]{2}$",
                                          "description": "Two-letter US state code of the recipient (e.g. NY). REQUIRED for this rail."
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Street address (line 1) of the recipient. Forwarded as payee address when creating the payee."
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "ACH_US"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "accountNumber",
                                        "routingNumber",
                                        "state",
                                        "type"
                                      ],
                                      "description": "USD ACH transfer details",
                                      "title": "AchUS"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "linkedBankAccount"
                                          ]
                                        },
                                        "accountLinkId": {
                                          "type": "string",
                                          "pattern": "^alnk_[0-9a-f]{24}$",
                                          "description": "Identifier of one of the account holder own linked bank accounts",
                                          "examples": [
                                            "alnk_0123456789abcdef01234567"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "type",
                                        "accountLinkId"
                                      ],
                                      "description": "A bank account the account holder linked beforehand. Pays out only to the holder of the order; never to a third party. Not available yet.",
                                      "title": "LinkedBankAccount",
                                      "deprecated": true
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "ETH"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Memo for the wallet, when the chain uses one"
                                        },
                                        "txId": {
                                          "type": "string",
                                          "description": "Blockchain transaction ID"
                                        },
                                        "txUrlScan": {
                                          "type": "string",
                                          "description": "Blockchain explorer URL for the transaction"
                                        },
                                        "destinationWalletAddress": {
                                          "type": "string",
                                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                        },
                                        "destinationWalletMemo": {
                                          "type": "string",
                                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                        },
                                        "destinationNetwork": {
                                          "type": "string",
                                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                        },
                                        "destinationCurrencySymbol": {
                                          "type": "string",
                                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "ETH destination details",
                                      "anyOf": [
                                        {
                                          "required": [
                                            "address"
                                          ],
                                          "properties": {
                                            "address": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        },
                                        {
                                          "required": [
                                            "destinationWalletAddress"
                                          ],
                                          "properties": {
                                            "destinationWalletAddress": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        }
                                      ],
                                      "title": "ETH"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MATIC"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Memo for the wallet, when the chain uses one"
                                        },
                                        "txId": {
                                          "type": "string",
                                          "description": "Blockchain transaction ID"
                                        },
                                        "txUrlScan": {
                                          "type": "string",
                                          "description": "Blockchain explorer URL for the transaction"
                                        },
                                        "destinationWalletAddress": {
                                          "type": "string",
                                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                        },
                                        "destinationWalletMemo": {
                                          "type": "string",
                                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                        },
                                        "destinationNetwork": {
                                          "type": "string",
                                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                        },
                                        "destinationCurrencySymbol": {
                                          "type": "string",
                                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "MATIC destination details",
                                      "anyOf": [
                                        {
                                          "required": [
                                            "address"
                                          ],
                                          "properties": {
                                            "address": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        },
                                        {
                                          "required": [
                                            "destinationWalletAddress"
                                          ],
                                          "properties": {
                                            "destinationWalletAddress": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        }
                                      ],
                                      "title": "MATIC"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "SOL"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Memo for the wallet, when the chain uses one"
                                        },
                                        "txId": {
                                          "type": "string",
                                          "description": "Blockchain transaction ID"
                                        },
                                        "txUrlScan": {
                                          "type": "string",
                                          "description": "Blockchain explorer URL for the transaction"
                                        },
                                        "destinationWalletAddress": {
                                          "type": "string",
                                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                        },
                                        "destinationWalletMemo": {
                                          "type": "string",
                                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                        },
                                        "destinationNetwork": {
                                          "type": "string",
                                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                        },
                                        "destinationCurrencySymbol": {
                                          "type": "string",
                                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "SOL destination details",
                                      "anyOf": [
                                        {
                                          "required": [
                                            "address"
                                          ],
                                          "properties": {
                                            "address": {
                                              "pattern": "\\S"
                                            }
                                          }
                                        },
                                        {
                                          "required": [
                                            "destinationWalletAddress"
                                          ],
                                          "properties": {
                                            "destinationWalletAddress": {
                                              "pattern": "\\S"
                                            }
                                          }
                                        }
                                      ],
                                      "title": "SOL"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "TRON"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Memo for the wallet, when the chain uses one"
                                        },
                                        "txId": {
                                          "type": "string",
                                          "description": "Blockchain transaction ID"
                                        },
                                        "txUrlScan": {
                                          "type": "string",
                                          "description": "Blockchain explorer URL for the transaction"
                                        },
                                        "destinationWalletAddress": {
                                          "type": "string",
                                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                        },
                                        "destinationWalletMemo": {
                                          "type": "string",
                                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                        },
                                        "destinationNetwork": {
                                          "type": "string",
                                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                        },
                                        "destinationCurrencySymbol": {
                                          "type": "string",
                                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "TRON destination details",
                                      "anyOf": [
                                        {
                                          "required": [
                                            "address"
                                          ],
                                          "properties": {
                                            "address": {
                                              "pattern": "\\S"
                                            }
                                          }
                                        },
                                        {
                                          "required": [
                                            "destinationWalletAddress"
                                          ],
                                          "properties": {
                                            "destinationWalletAddress": {
                                              "pattern": "\\S"
                                            }
                                          }
                                        }
                                      ],
                                      "title": "TRON"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "CELO"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Memo for the wallet, when the chain uses one"
                                        },
                                        "txId": {
                                          "type": "string",
                                          "description": "Blockchain transaction ID"
                                        },
                                        "txUrlScan": {
                                          "type": "string",
                                          "description": "Blockchain explorer URL for the transaction"
                                        },
                                        "destinationWalletAddress": {
                                          "type": "string",
                                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                        },
                                        "destinationWalletMemo": {
                                          "type": "string",
                                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                        },
                                        "destinationNetwork": {
                                          "type": "string",
                                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                        },
                                        "destinationCurrencySymbol": {
                                          "type": "string",
                                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "CELO destination details",
                                      "anyOf": [
                                        {
                                          "required": [
                                            "address"
                                          ],
                                          "properties": {
                                            "address": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        },
                                        {
                                          "required": [
                                            "destinationWalletAddress"
                                          ],
                                          "properties": {
                                            "destinationWalletAddress": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        }
                                      ],
                                      "title": "CELO"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BTC"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Memo for the wallet, when the chain uses one"
                                        },
                                        "txId": {
                                          "type": "string",
                                          "description": "Blockchain transaction ID"
                                        },
                                        "txUrlScan": {
                                          "type": "string",
                                          "description": "Blockchain explorer URL for the transaction"
                                        },
                                        "destinationWalletAddress": {
                                          "type": "string",
                                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                        },
                                        "destinationWalletMemo": {
                                          "type": "string",
                                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                        },
                                        "destinationNetwork": {
                                          "type": "string",
                                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                        },
                                        "destinationCurrencySymbol": {
                                          "type": "string",
                                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "BTC destination details",
                                      "anyOf": [
                                        {
                                          "required": [
                                            "address"
                                          ],
                                          "properties": {
                                            "address": {
                                              "pattern": "\\S"
                                            }
                                          }
                                        },
                                        {
                                          "required": [
                                            "destinationWalletAddress"
                                          ],
                                          "properties": {
                                            "destinationWalletAddress": {
                                              "pattern": "\\S"
                                            }
                                          }
                                        }
                                      ],
                                      "title": "BTC"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "SOLANA"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Memo for the wallet, when the chain uses one"
                                        },
                                        "txId": {
                                          "type": "string",
                                          "description": "Blockchain transaction ID"
                                        },
                                        "txUrlScan": {
                                          "type": "string",
                                          "description": "Blockchain explorer URL for the transaction"
                                        },
                                        "destinationWalletAddress": {
                                          "type": "string",
                                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                        },
                                        "destinationWalletMemo": {
                                          "type": "string",
                                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                        },
                                        "destinationNetwork": {
                                          "type": "string",
                                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                        },
                                        "destinationCurrencySymbol": {
                                          "type": "string",
                                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "SOLANA destination details",
                                      "anyOf": [
                                        {
                                          "required": [
                                            "address"
                                          ],
                                          "properties": {
                                            "address": {
                                              "pattern": "\\S"
                                            }
                                          }
                                        },
                                        {
                                          "required": [
                                            "destinationWalletAddress"
                                          ],
                                          "properties": {
                                            "destinationWalletAddress": {
                                              "pattern": "\\S"
                                            }
                                          }
                                        }
                                      ],
                                      "title": "SOLANA"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "XRP"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Memo for the wallet, when the chain uses one"
                                        },
                                        "txId": {
                                          "type": "string",
                                          "description": "Blockchain transaction ID"
                                        },
                                        "txUrlScan": {
                                          "type": "string",
                                          "description": "Blockchain explorer URL for the transaction"
                                        },
                                        "destinationWalletAddress": {
                                          "type": "string",
                                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                        },
                                        "destinationWalletMemo": {
                                          "type": "string",
                                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                        },
                                        "destinationNetwork": {
                                          "type": "string",
                                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                        },
                                        "destinationCurrencySymbol": {
                                          "type": "string",
                                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "XRP destination details",
                                      "anyOf": [
                                        {
                                          "required": [
                                            "address"
                                          ],
                                          "properties": {
                                            "address": {
                                              "pattern": "\\S"
                                            }
                                          }
                                        },
                                        {
                                          "required": [
                                            "destinationWalletAddress"
                                          ],
                                          "properties": {
                                            "destinationWalletAddress": {
                                              "pattern": "\\S"
                                            }
                                          }
                                        }
                                      ],
                                      "title": "XRP"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "CARDANO"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Memo for the wallet, when the chain uses one"
                                        },
                                        "txId": {
                                          "type": "string",
                                          "description": "Blockchain transaction ID"
                                        },
                                        "txUrlScan": {
                                          "type": "string",
                                          "description": "Blockchain explorer URL for the transaction"
                                        },
                                        "destinationWalletAddress": {
                                          "type": "string",
                                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                        },
                                        "destinationWalletMemo": {
                                          "type": "string",
                                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                        },
                                        "destinationNetwork": {
                                          "type": "string",
                                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                        },
                                        "destinationCurrencySymbol": {
                                          "type": "string",
                                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "CARDANO destination details",
                                      "anyOf": [
                                        {
                                          "required": [
                                            "address"
                                          ],
                                          "properties": {
                                            "address": {
                                              "pattern": "\\S"
                                            }
                                          }
                                        },
                                        {
                                          "required": [
                                            "destinationWalletAddress"
                                          ],
                                          "properties": {
                                            "destinationWalletAddress": {
                                              "pattern": "\\S"
                                            }
                                          }
                                        }
                                      ],
                                      "title": "CARDANO"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BSC"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Memo for the wallet, when the chain uses one"
                                        },
                                        "txId": {
                                          "type": "string",
                                          "description": "Blockchain transaction ID"
                                        },
                                        "txUrlScan": {
                                          "type": "string",
                                          "description": "Blockchain explorer URL for the transaction"
                                        },
                                        "destinationWalletAddress": {
                                          "type": "string",
                                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                        },
                                        "destinationWalletMemo": {
                                          "type": "string",
                                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                        },
                                        "destinationNetwork": {
                                          "type": "string",
                                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                        },
                                        "destinationCurrencySymbol": {
                                          "type": "string",
                                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "BSC destination details",
                                      "anyOf": [
                                        {
                                          "required": [
                                            "address"
                                          ],
                                          "properties": {
                                            "address": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        },
                                        {
                                          "required": [
                                            "destinationWalletAddress"
                                          ],
                                          "properties": {
                                            "destinationWalletAddress": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        }
                                      ],
                                      "title": "BSC"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "ARBITRUM"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Memo for the wallet, when the chain uses one"
                                        },
                                        "txId": {
                                          "type": "string",
                                          "description": "Blockchain transaction ID"
                                        },
                                        "txUrlScan": {
                                          "type": "string",
                                          "description": "Blockchain explorer URL for the transaction"
                                        },
                                        "destinationWalletAddress": {
                                          "type": "string",
                                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                        },
                                        "destinationWalletMemo": {
                                          "type": "string",
                                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                        },
                                        "destinationNetwork": {
                                          "type": "string",
                                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                        },
                                        "destinationCurrencySymbol": {
                                          "type": "string",
                                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "ARBITRUM destination details",
                                      "anyOf": [
                                        {
                                          "required": [
                                            "address"
                                          ],
                                          "properties": {
                                            "address": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        },
                                        {
                                          "required": [
                                            "destinationWalletAddress"
                                          ],
                                          "properties": {
                                            "destinationWalletAddress": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        }
                                      ],
                                      "title": "ARBITRUM"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "OPTIMISM"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Memo for the wallet, when the chain uses one"
                                        },
                                        "txId": {
                                          "type": "string",
                                          "description": "Blockchain transaction ID"
                                        },
                                        "txUrlScan": {
                                          "type": "string",
                                          "description": "Blockchain explorer URL for the transaction"
                                        },
                                        "destinationWalletAddress": {
                                          "type": "string",
                                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                        },
                                        "destinationWalletMemo": {
                                          "type": "string",
                                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                        },
                                        "destinationNetwork": {
                                          "type": "string",
                                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                        },
                                        "destinationCurrencySymbol": {
                                          "type": "string",
                                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "OPTIMISM destination details",
                                      "anyOf": [
                                        {
                                          "required": [
                                            "address"
                                          ],
                                          "properties": {
                                            "address": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        },
                                        {
                                          "required": [
                                            "destinationWalletAddress"
                                          ],
                                          "properties": {
                                            "destinationWalletAddress": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        }
                                      ],
                                      "title": "OPTIMISM"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "AVALANCHE"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Memo for the wallet, when the chain uses one"
                                        },
                                        "txId": {
                                          "type": "string",
                                          "description": "Blockchain transaction ID"
                                        },
                                        "txUrlScan": {
                                          "type": "string",
                                          "description": "Blockchain explorer URL for the transaction"
                                        },
                                        "destinationWalletAddress": {
                                          "type": "string",
                                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                        },
                                        "destinationWalletMemo": {
                                          "type": "string",
                                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                        },
                                        "destinationNetwork": {
                                          "type": "string",
                                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                        },
                                        "destinationCurrencySymbol": {
                                          "type": "string",
                                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "AVALANCHE destination details",
                                      "anyOf": [
                                        {
                                          "required": [
                                            "address"
                                          ],
                                          "properties": {
                                            "address": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        },
                                        {
                                          "required": [
                                            "destinationWalletAddress"
                                          ],
                                          "properties": {
                                            "destinationWalletAddress": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        }
                                      ],
                                      "title": "AVALANCHE"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BASE"
                                          ]
                                        },
                                        "address": {
                                          "type": "string",
                                          "description": "Destination wallet address. Send this rather than the legacy `destinationWalletAddress` — at least one of the two is required, and a payload carrying neither is rejected. On EVM chains the address is \"0x\" followed by 40 hex characters."
                                        },
                                        "memo": {
                                          "type": "string",
                                          "description": "Memo for the wallet, when the chain uses one"
                                        },
                                        "txId": {
                                          "type": "string",
                                          "description": "Blockchain transaction ID"
                                        },
                                        "txUrlScan": {
                                          "type": "string",
                                          "description": "Blockchain explorer URL for the transaction"
                                        },
                                        "destinationWalletAddress": {
                                          "type": "string",
                                          "description": "Destination wallet address (legacy shape). Still accepted, but send `address` instead — at least one of the two is required and supplying neither is rejected."
                                        },
                                        "destinationWalletMemo": {
                                          "type": "string",
                                          "description": "Memo for the wallet (legacy shape) — send `memo` instead"
                                        },
                                        "destinationNetwork": {
                                          "type": "string",
                                          "description": "Network name, when the corridor addresses the chain by name rather than by `type`"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Network id from GET /v1/currencies/{currency}/networks, for corridors where `supportsNetworkDiscovery` is true"
                                        },
                                        "destinationCurrencySymbol": {
                                          "type": "string",
                                          "description": "Asset symbol on the chain. `type` names the chain, so this is what separates the native coin from tokens on it — ETH from USDC-on-Ethereum."
                                        }
                                      },
                                      "required": [
                                        "type"
                                      ],
                                      "description": "BASE destination details",
                                      "anyOf": [
                                        {
                                          "required": [
                                            "address"
                                          ],
                                          "properties": {
                                            "address": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        },
                                        {
                                          "required": [
                                            "destinationWalletAddress"
                                          ],
                                          "properties": {
                                            "destinationWalletAddress": {
                                              "pattern": "^\\s*0x[a-fA-F0-9]{40}\\s*$"
                                            }
                                          }
                                        }
                                      ],
                                      "title": "BASE"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id from GET /v1/currencies/COP/networks. Not read by the payout; retained for the network selector and for stored records."
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_COL"
                                          ]
                                        },
                                        "destinationBankCode": {
                                          "type": "string",
                                          "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=bankDepositCOL (the code, not the name). Required when creating or updating a destination."
                                        },
                                        "destinationBankAccountType": {
                                          "type": "string",
                                          "description": "Bank account type — CORRIENTE or AHORRO. Required when creating or updating a destination."
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "description": "Recipient ID document number. Required when creating or updating a destination."
                                        },
                                        "destinationDocumentType": {
                                          "type": "string",
                                          "description": "Recipient ID document type — CC, CE, NIT, TI or PP. Required when creating or updating a destination."
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Colombian bank deposit details. Equivalent to ACH_COP — same payout rail, same required fields, same bank roster; ACH_COP is recommended for new integrations. Note that BANK_DEPOSIT_COL is also the name of a COP collection rail.",
                                      "title": "Bank Deposit COL"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "brebKey": {
                                          "type": "string",
                                          "minLength": 1,
                                          "description": "Bre-B key (llave) that identifies the recipient account"
                                        },
                                        "email": {
                                          "type": "string",
                                          "description": "Recipient email (optional contact for the Bre-B rail)"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Recipient phone number (optional contact for the Bre-B rail)"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BRE_B_COP"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "brebKey",
                                        "type"
                                      ],
                                      "description": "Colombian Bre-B payout details",
                                      "title": "Bre-B COP"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankCode": {
                                          "type": "string",
                                          "pattern": "^\\d{4}$",
                                          "description": "Recipient bank code — one of the 4-digit codes published by GET /v1/currencies/COP/destination-schema?method=achCOP (the code, not the name)"
                                        },
                                        "destinationBankAccountNumber": {
                                          "type": "string",
                                          "minLength": 1,
                                          "description": "Recipient bank account number"
                                        },
                                        "destinationBankAccountType": {
                                          "type": "string",
                                          "minLength": 1,
                                          "description": "Bank account type (e.g. AHORROS / CORRIENTE)"
                                        },
                                        "destinationDocumentType": {
                                          "type": "string",
                                          "minLength": 1,
                                          "description": "Recipient ID document type (e.g. CC / CE / NIT)"
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "minLength": 1,
                                          "description": "Recipient ID document number"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "ACH_COP"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankCode",
                                        "destinationBankAccountNumber",
                                        "destinationBankAccountType",
                                        "destinationDocumentType",
                                        "destinationTaxId",
                                        "type"
                                      ],
                                      "description": "Colombian ACH payout details",
                                      "title": "ACH COP"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (unused for TWD — no network discovery)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "minLength": 2,
                                          "description": "Bank name (required — TWD payouts run over SWIFT)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_TW"
                                          ]
                                        },
                                        "destinationBankBranch": {
                                          "type": "string",
                                          "minLength": 2,
                                          "description": "Bank branch (required — TWD payouts run over SWIFT)"
                                        },
                                        "bic": {
                                          "type": "string",
                                          "pattern": "^[A-Za-z]{4}[A-Za-z]{2}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$",
                                          "description": "SWIFT BIC code (required for TWD payouts)"
                                        },
                                        "destinationBankAccountType": {
                                          "type": "string",
                                          "description": "Type of bank account (legacy, optional)"
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "description": "Tax ID of the recipient (legacy, optional)"
                                        },
                                        "destinationDocumentType": {
                                          "type": "string",
                                          "description": "Document type of the recipient (legacy, optional)"
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "destinationBankName",
                                        "type",
                                        "destinationBankBranch",
                                        "bic"
                                      ],
                                      "description": "Taiwan bank deposit details (SWIFT payout)",
                                      "title": "Bank Deposit TW"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankCode": {
                                          "type": "string",
                                          "description": "Bank code"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationBankBranch": {
                                          "type": "string",
                                          "description": "Bank branch"
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "description": "Tax ID of the recipient"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_BR"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankCode",
                                        "destinationBankAccount",
                                        "destinationBankBranch",
                                        "destinationTaxId",
                                        "type"
                                      ],
                                      "description": "Brazilian bank deposit details",
                                      "title": "Bank Deposit BR"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPixCode": {
                                          "type": "string",
                                          "description": "PIX code"
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "description": "Tax ID of the recipient"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "PIX_BR"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPixCode",
                                        "destinationTaxId",
                                        "type"
                                      ],
                                      "description": "Brazilian PIX details",
                                      "title": "PIX BR"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccountNumber": {
                                          "type": "string",
                                          "description": "Bank account number"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Name of the bank"
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                                          "description": "Tax ID of the recipient"
                                        },
                                        "destinationBankAccountType": {
                                          "type": "string",
                                          "description": "Type of bank account"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_VEN"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccountNumber",
                                        "destinationBankName",
                                        "destinationTaxId",
                                        "destinationBankAccountType",
                                        "type"
                                      ],
                                      "description": "Venezuelan bank deposit details",
                                      "title": "Bank Deposit VEN"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankCode": {
                                          "type": "string",
                                          "description": "Bank code"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "pattern": "^[VvEeJj]-?[\\d.,/-]{0,10}\\d$",
                                          "description": "Tax ID of the recipient"
                                        },
                                        "destinationBankAccountType": {
                                          "type": "string",
                                          "description": "Type of bank account"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "PHONE_DEPOSIT_VEN"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankCode",
                                        "destinationPhoneNumber",
                                        "destinationTaxId",
                                        "destinationBankAccountType",
                                        "type"
                                      ],
                                      "description": "Venezuelan phone deposit details",
                                      "title": "Phone Deposit VEN"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationIFSC": {
                                          "type": "string",
                                          "description": "IFSC code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_IN"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "India bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                      "title": "Bank Deposit IN",
                                      "deprecated": true
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationIFSC": {
                                          "type": "string",
                                          "description": "IFSC code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "IMPS"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "India IMPS details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                      "title": "IMPS",
                                      "deprecated": true
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationIFSC": {
                                          "type": "string",
                                          "description": "IFSC code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "THAI_QR"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Thailand Thai QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                      "title": "Thai QR",
                                      "deprecated": true
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationIFSC": {
                                          "type": "string",
                                          "description": "IFSC code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "VIET_QR"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Vietnam Viet QR details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                      "title": "Viet QR",
                                      "deprecated": true
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationIFSC": {
                                          "type": "string",
                                          "description": "IFSC code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "GCASH"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Philippines GCash details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                      "title": "GCash",
                                      "deprecated": true
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "description": "Tax ID"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_PAYMENT_IN"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPhoneNumber",
                                        "destinationTaxId",
                                        "type"
                                      ],
                                      "description": "India mobile payment details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                      "title": "Mobile Payment IN",
                                      "deprecated": true
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationBankCode": {
                                          "type": "string",
                                          "description": "Bank code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_VN"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "destinationBankCode",
                                        "type"
                                      ],
                                      "description": "Vietnam bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                      "title": "Bank Deposit VN",
                                      "deprecated": true
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "bic": {
                                          "type": "string",
                                          "description": "SWIFT BIC code (required for HKD payouts via the HK bank corridor)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "destinationAddress": {
                                          "type": "string",
                                          "description": "Address line 1 of the recipient"
                                        },
                                        "destinationCity": {
                                          "type": "string",
                                          "description": "Recipient city (defaults to Hong Kong)"
                                        },
                                        "accountHolderName": {
                                          "type": "string",
                                          "description": "Bank account holder name if different from payee"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_HK"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "bic",
                                        "destinationBankName",
                                        "destinationAddress",
                                        "type"
                                      ],
                                      "description": "Hong Kong bank deposit details (HKD bank corridor)",
                                      "title": "Bank Deposit HK"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationBankCode": {
                                          "type": "string",
                                          "pattern": "^\\d+$",
                                          "description": "CNAPS / bank institution code (numeric, variable length)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name"
                                        },
                                        "destinationAddress": {
                                          "type": "string",
                                          "description": "Address line 1 of the recipient"
                                        },
                                        "destinationCity": {
                                          "type": "string",
                                          "description": "Recipient city"
                                        },
                                        "destinationState": {
                                          "type": "string",
                                          "minLength": 1,
                                          "description": "Province / state of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                                        },
                                        "destinationPostcode": {
                                          "type": "string",
                                          "minLength": 1,
                                          "description": "Postal code of the recipient (required for CN — the beneficiary is rejected in compliance review without it)"
                                        },
                                        "destinationPhone": {
                                          "type": "string",
                                          "description": "Phone number of the recipient, without country prefix (optional; defaulted for CN when omitted)"
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "description": "Unified Social Credit Code (USCC, GB 32100-2015) of the recipient company — 18 characters including the check digit; whitespace is removed and letters are normalized to uppercase (optional)"
                                        },
                                        "accountHolderName": {
                                          "type": "string",
                                          "description": "Bank account holder name if different from payee"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_CN"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "destinationBankCode",
                                        "destinationBankName",
                                        "destinationAddress",
                                        "destinationCity",
                                        "destinationState",
                                        "destinationPostcode",
                                        "type"
                                      ],
                                      "description": "China mainland bank deposit details (CNY bank corridor)",
                                      "title": "Bank Deposit CN"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id from GET /v1/currencies/ARS/networks (the network selector, optional)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_AR"
                                          ]
                                        },
                                        "destinationCBU": {
                                          "type": "string",
                                          "description": "CBU — 22-digit bank account key (legacy, optional)"
                                        },
                                        "destinationCVU": {
                                          "type": "string",
                                          "description": "CVU — 22-digit virtual account key (legacy, optional)"
                                        },
                                        "destinationAlias": {
                                          "type": "string",
                                          "description": "Account alias (legacy, optional)"
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "description": "CUIT/CUIL tax ID of the recipient (required when creating ARS bank destinations): exactly 11 digits with no hyphens, spaces or other characters, and a valid check digit (e.g. 20000000001)"
                                        },
                                        "destinationDocumentType": {
                                          "type": "string",
                                          "description": "Document type of the recipient (legacy, optional)"
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Argentinian bank deposit details",
                                      "title": "Bank Deposit AR"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationBankName is given)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "minLength": 1,
                                          "description": "Recipient bank name (required for Chilean bank payouts)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_CL"
                                          ]
                                        },
                                        "destinationBankAccountType": {
                                          "type": "string",
                                          "minLength": 1,
                                          "description": "Account type — corriente or ahorro (required for Chilean bank payouts)"
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "minLength": 1,
                                          "description": "RUT tax ID of the recipient (required for Chilean bank payouts)"
                                        },
                                        "destinationDocumentType": {
                                          "type": "string",
                                          "description": "Document type of the recipient (legacy, optional)"
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "destinationBankName",
                                        "type",
                                        "destinationBankAccountType",
                                        "destinationTaxId"
                                      ],
                                      "description": "Chilean bank deposit details",
                                      "title": "Bank Deposit CL"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "minLength": 2,
                                          "maxLength": 30,
                                          "description": "Recipient name (required, 2–30 characters)"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 11,
                                          "description": "Bank account number (max 11 digits for Bolivian accounts)"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (unused for BOB — no network discovery)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "maxLength": 20,
                                          "description": "Bank name (optional, max 20 characters)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_BO"
                                          ]
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 15,
                                          "description": "NIT tax ID of the recipient (required for Bolivian payouts)"
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type",
                                        "destinationTaxId"
                                      ],
                                      "description": "Bolivian bank deposit details",
                                      "title": "Bank Deposit BO"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id from GET /v1/currencies/PEN/networks (the network selector)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_PE"
                                          ]
                                        },
                                        "destinationCCI": {
                                          "type": "string",
                                          "description": "CCI — 20-digit interbank account code (legacy, optional)"
                                        },
                                        "destinationBankAccountType": {
                                          "type": "string",
                                          "description": "Account type (corriente/ahorro) (legacy, optional)"
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "description": "DNI/RUC document ID of the recipient (legacy, optional)"
                                        },
                                        "destinationDocumentType": {
                                          "type": "string",
                                          "description": "Document type of the recipient (legacy, optional)"
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "destinationNetworkId",
                                        "type"
                                      ],
                                      "description": "Peruvian bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                      "title": "Bank Deposit PE",
                                      "deprecated": true
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankCode": {
                                          "type": "string",
                                          "pattern": "^\\d{3}$",
                                          "description": "Recipient bank code (the 3-digit code the rail expects, not the name)"
                                        },
                                        "destinationBankAccountNumber": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 20,
                                          "description": "Recipient bank account number (max 20)"
                                        },
                                        "destinationBankAccountType": {
                                          "type": "string",
                                          "enum": [
                                            "CORRIENTE",
                                            "AHORROS",
                                            "PHONE"
                                          ],
                                          "description": "Bank account type"
                                        },
                                        "destinationCCI": {
                                          "type": "string",
                                          "pattern": "^\\d{1,20}$",
                                          "description": "CCI — Peruvian interbank code (required, digits only, max 20)"
                                        },
                                        "destinationDocumentType": {
                                          "type": "string",
                                          "enum": [
                                            "CC",
                                            "CE",
                                            "RUC",
                                            "PAS",
                                            "PAR",
                                            "LMI",
                                            "OTHER"
                                          ],
                                          "description": "Recipient identification type"
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 50,
                                          "description": "Recipient identification number (max 50)"
                                        },
                                        "email": {
                                          "type": "string",
                                          "pattern": "^.+@.+\\..+$",
                                          "description": "Recipient email (required for PEN payouts)"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "pattern": "^\\d{1,9}$",
                                          "description": "Recipient phone number (required, max 9 digits)"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_PEN"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankCode",
                                        "destinationBankAccountNumber",
                                        "destinationBankAccountType",
                                        "destinationCCI",
                                        "destinationDocumentType",
                                        "destinationTaxId",
                                        "email",
                                        "destinationPhoneNumber",
                                        "type"
                                      ],
                                      "description": "Peruvian bank deposit details (bank-code payout corridor).",
                                      "title": "Bank Deposit PEN"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationBankName is given)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_NG"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Nigeria bank deposit details",
                                      "title": "Bank Deposit NG"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationBankName is given)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_KE"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Kenya bank deposit details",
                                      "title": "Bank Deposit KE"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationBankName is given)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_GH"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Ghana bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                      "title": "Bank Deposit GH",
                                      "deprecated": true
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationBankName is given)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_ZA"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "South Africa bank deposit details",
                                      "title": "Bank Deposit ZA"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationBankName is given)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_TZ"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Tanzania bank deposit details",
                                      "title": "Bank Deposit TZ"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationBankName is given)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_UG"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Uganda bank deposit details",
                                      "title": "Bank Deposit UG"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationBankName is given)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_RW"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Rwanda bank deposit details",
                                      "title": "Bank Deposit RW"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationBankName is given)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_MW"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Malawi bank deposit details",
                                      "title": "Bank Deposit MW"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationBankName is given)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_ZM"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Zambia bank deposit details",
                                      "title": "Bank Deposit ZM"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationBankName is given)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_BW"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Botswana bank deposit details",
                                      "title": "Bank Deposit BW"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationBankName is given)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_CD"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "DR Congo bank deposit details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                      "title": "Bank Deposit CD",
                                      "deprecated": true
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationBankName is given)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_XOF"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "West African CFA bank deposit details",
                                      "title": "Bank Deposit XOF"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankAccount": {
                                          "type": "string",
                                          "description": "Bank account"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationBankName is given)"
                                        },
                                        "destinationBankName": {
                                          "type": "string",
                                          "description": "Bank name (used to resolve the network when id is omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_XAF"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccount",
                                        "type"
                                      ],
                                      "description": "Central African CFA bank deposit details",
                                      "title": "Bank Deposit XAF"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationNetworkName is given)"
                                        },
                                        "destinationNetworkName": {
                                          "type": "string",
                                          "description": "Mobile money network name (resolves the network when id omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_NG"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPhoneNumber",
                                        "type"
                                      ],
                                      "description": "Nigeria mobile money details",
                                      "title": "Mobile Money NG"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationNetworkName is given)"
                                        },
                                        "destinationNetworkName": {
                                          "type": "string",
                                          "description": "Mobile money network name (resolves the network when id omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_KE"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPhoneNumber",
                                        "type"
                                      ],
                                      "description": "Kenya mobile money details",
                                      "title": "Mobile Money KE"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationNetworkName is given)"
                                        },
                                        "destinationNetworkName": {
                                          "type": "string",
                                          "description": "Mobile money network name (resolves the network when id omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_GH"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPhoneNumber",
                                        "type"
                                      ],
                                      "description": "Ghana mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                      "title": "Mobile Money GH",
                                      "deprecated": true
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationNetworkName is given)"
                                        },
                                        "destinationNetworkName": {
                                          "type": "string",
                                          "description": "Mobile money network name (resolves the network when id omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_ZA"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPhoneNumber",
                                        "type"
                                      ],
                                      "description": "South Africa mobile money details",
                                      "title": "Mobile Money ZA"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationNetworkName is given)"
                                        },
                                        "destinationNetworkName": {
                                          "type": "string",
                                          "description": "Mobile money network name (resolves the network when id omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_TZ"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPhoneNumber",
                                        "type"
                                      ],
                                      "description": "Tanzania mobile money details",
                                      "title": "Mobile Money TZ"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationNetworkName is given)"
                                        },
                                        "destinationNetworkName": {
                                          "type": "string",
                                          "description": "Mobile money network name (resolves the network when id omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_UG"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPhoneNumber",
                                        "type"
                                      ],
                                      "description": "Uganda mobile money details",
                                      "title": "Mobile Money UG"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationNetworkName is given)"
                                        },
                                        "destinationNetworkName": {
                                          "type": "string",
                                          "description": "Mobile money network name (resolves the network when id omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_RW"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPhoneNumber",
                                        "type"
                                      ],
                                      "description": "Rwanda mobile money details",
                                      "title": "Mobile Money RW"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationNetworkName is given)"
                                        },
                                        "destinationNetworkName": {
                                          "type": "string",
                                          "description": "Mobile money network name (resolves the network when id omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_MW"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPhoneNumber",
                                        "type"
                                      ],
                                      "description": "Malawi mobile money details",
                                      "title": "Mobile Money MW"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationNetworkName is given)"
                                        },
                                        "destinationNetworkName": {
                                          "type": "string",
                                          "description": "Mobile money network name (resolves the network when id omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_ZM"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPhoneNumber",
                                        "type"
                                      ],
                                      "description": "Zambia mobile money details",
                                      "title": "Mobile Money ZM"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationNetworkName is given)"
                                        },
                                        "destinationNetworkName": {
                                          "type": "string",
                                          "description": "Mobile money network name (resolves the network when id omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_BW"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPhoneNumber",
                                        "type"
                                      ],
                                      "description": "Botswana mobile money details",
                                      "title": "Mobile Money BW"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationNetworkName is given)"
                                        },
                                        "destinationNetworkName": {
                                          "type": "string",
                                          "description": "Mobile money network name (resolves the network when id omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_CD"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPhoneNumber",
                                        "type"
                                      ],
                                      "description": "DR Congo mobile money details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                      "title": "Mobile Money CD",
                                      "deprecated": true
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationNetworkName is given)"
                                        },
                                        "destinationNetworkName": {
                                          "type": "string",
                                          "description": "Mobile money network name (resolves the network when id omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_XOF"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPhoneNumber",
                                        "type"
                                      ],
                                      "description": "West African CFA mobile money details",
                                      "title": "Mobile Money XOF"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPhoneNumber": {
                                          "type": "string",
                                          "description": "Phone number"
                                        },
                                        "destinationNetworkId": {
                                          "type": "string",
                                          "description": "Payout network id (optional if destinationNetworkName is given)"
                                        },
                                        "destinationNetworkName": {
                                          "type": "string",
                                          "description": "Mobile money network name (resolves the network when id omitted)"
                                        },
                                        "country": {
                                          "type": "string",
                                          "description": "ISO 3166 country code"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "MOBILE_MONEY_XAF"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPhoneNumber",
                                        "type"
                                      ],
                                      "description": "Central African CFA mobile money details",
                                      "title": "Mobile Money XAF"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationBankCode": {
                                          "type": "string",
                                          "description": "Bank code"
                                        },
                                        "destinationBankAccountNumber": {
                                          "type": "string",
                                          "description": "Bank account number (18-digit CLABE)"
                                        },
                                        "numericReference": {
                                          "type": "string",
                                          "description": "Numeric reference"
                                        },
                                        "notesReference": {
                                          "type": "string",
                                          "description": "Notes reference"
                                        },
                                        "destinationClabe": {
                                          "type": "string",
                                          "description": "CLABE — legacy alias, prefer destinationBankAccountNumber"
                                        },
                                        "destinationTaxId": {
                                          "type": "string",
                                          "description": "Recipient tax id (RFC) — required by some MX bank-deposit rails (\"Número de Identificación\"); optional otherwise"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "BANK_DEPOSIT_MX"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationBankAccountNumber",
                                        "type"
                                      ],
                                      "description": "Mexican bank deposit details",
                                      "title": "Bank Deposit MX"
                                    },
                                    {
                                      "type": "object",
                                      "properties": {
                                        "destinationName": {
                                          "type": "string",
                                          "description": "Name of the recipient"
                                        },
                                        "destinationPseNumber": {
                                          "type": "string",
                                          "description": "PSE number"
                                        },
                                        "type": {
                                          "type": "string",
                                          "enum": [
                                            "PSE"
                                          ]
                                        }
                                      },
                                      "required": [
                                        "destinationName",
                                        "destinationPseNumber",
                                        "type"
                                      ],
                                      "description": "PSE transfer details. Deprecated — no active payout corridor for this method; orders using it are rejected. Retained for backward compatibility with stored destinations.",
                                      "title": "PSE",
                                      "deprecated": true
                                    }
                                  ],
                                  "description": "Detailed withdrawal information",
                                  "title": "WithdrawalInfo"
                                },
                                "source": {
                                  "type": "string",
                                  "enum": [
                                    "ui",
                                    "apiApp",
                                    "externalApi",
                                    "internal"
                                  ],
                                  "description": "Source of withdrawal creation",
                                  "example": "externalApi"
                                },
                                "requires2FA": {
                                  "type": "boolean",
                                  "description": "Whether 2FA is required for this withdrawal",
                                  "example": false
                                },
                                "twoFactorToken": {
                                  "type": "string",
                                  "description": "2FA token for email approval",
                                  "example": "abc123"
                                },
                                "twoFactorApprovedAt": {
                                  "type": "number",
                                  "description": "Timestamp when 2FA was approved",
                                  "example": 1723027132
                                },
                                "errorCode": {
                                  "type": "string",
                                  "description": "Error code when status is Review",
                                  "example": "INSUFFICIENT_BALANCE"
                                },
                                "errorDetails": {
                                  "type": "string",
                                  "description": "Detailed error information",
                                  "example": "Insufficient balance for withdrawal"
                                },
                                "reviewedBy": {
                                  "type": "string",
                                  "description": "Admin email who reviewed the withdrawal",
                                  "example": "admin@example.com"
                                },
                                "reviewedAt": {
                                  "type": "number",
                                  "description": "Timestamp when review happened",
                                  "example": 1723027132
                                }
                              },
                              "required": [
                                "withdrawalId",
                                "createdAt",
                                "amount",
                                "currency",
                                "fee",
                                "feeCurrency",
                                "status"
                              ],
                              "description": "Details of the withdrawal associated with the order"
                            },
                            "createdAt": {
                              "type": "number",
                              "description": "Creation time of the order (timestamp)",
                              "examples": [
                                1723027132,
                                1723027200,
                                1723027300
                              ]
                            },
                            "updatedAt": {
                              "type": "number",
                              "description": "Last update time of the order (timestamp)",
                              "examples": [
                                1723027132,
                                1723027200,
                                1723027300
                              ]
                            },
                            "status": {
                              "anyOf": [
                                {
                                  "type": "string",
                                  "enum": [
                                    "Pending",
                                    "Processing",
                                    "Success",
                                    "Failed",
                                    "Canceled",
                                    "Reviewing"
                                  ],
                                  "description": "Common status values that are shared across all operation types",
                                  "examples": [
                                    "Pending",
                                    "Processing",
                                    "Success",
                                    "Failed",
                                    "Canceled",
                                    "Reviewing"
                                  ]
                                },
                                {
                                  "type": "string",
                                  "enum": [
                                    "Received",
                                    "Exchanging",
                                    "Exchanged",
                                    "WithdrawProcessing",
                                    "Withdrawn",
                                    "OffRampProcessing",
                                    "OffRamped",
                                    "Deleted",
                                    "PendingCancel",
                                    "Closed",
                                    "WaitingForFundsToExchange",
                                    "WaitingForFundsToSend",
                                    "WaitingForFundsToOffRamp",
                                    "OffRampDocPending",
                                    "OnRampDocPending",
                                    "WaitingForConfirmations",
                                    "PriceChanged",
                                    "Refunded",
                                    "PreparedToOffRamp",
                                    "WithdrawOfframpProcessing",
                                    "WaitingForFundsToSendOfframp",
                                    "WaitingForPayoutSettlement",
                                    "WithdrawPending",
                                    "WithdrawPendingOfframp"
                                  ]
                                }
                              ],
                              "description": "Status of the order. A newly created order is typically `Pending`; a balance-funded order may start further along.",
                              "examples": [
                                "Pending"
                              ]
                            },
                            "externalReference": {
                              "type": "string",
                              "description": "External reference of the order, as you supplied it on create."
                            },
                            "externalRefeference": {
                              "type": "string",
                              "description": "Deprecated misspelling of `externalReference` — same value. Read `externalReference` instead; this key remains for backward compatibility and will be removed in a future major version.",
                              "deprecated": true
                            },
                            "fee": {
                              "type": "number",
                              "minimum": 0,
                              "description": "Total fee for the order once all the execution is completed",
                              "examples": [
                                6.37,
                                8.5,
                                10.25
                              ]
                            },
                            "expectedFee": {
                              "type": "number",
                              "minimum": 0,
                              "exclusiveMinimum": true,
                              "description": "Expected fee given the initial deposit amount",
                              "examples": [
                                6.88,
                                9.2,
                                11.5
                              ]
                            },
                            "expectedGasFee": {
                              "type": "number",
                              "description": "Expected gas fee if the withdrawal is with crypto",
                              "examples": [
                                6.88,
                                8.5,
                                10.25
                              ]
                            },
                            "feeCurrency": {
                              "type": "string",
                              "description": "Currency of the fee",
                              "examples": [
                                "EUR",
                                "USD",
                                "GBP"
                              ]
                            }
                          },
                          "required": [
                            "orderId",
                            "createdAt",
                            "status",
                            "fee",
                            "expectedFee",
                            "feeCurrency"
                          ],
                          "description": "Response schema for creating an order"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "transferId": {
                              "type": "string",
                              "description": "Linked transfer ID"
                            },
                            "message": {
                              "type": "string",
                              "description": "Success or error message"
                            }
                          }
                        }
                      ],
                      "description": "Response schema for creating an order"
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "409": {
            "description": "Conflict — the transfer cannot be used in its current state: it is under review by the VirtuaBroker team (for example, pending name verification) or already linked to another order or deposit. The error message explains the specific reason.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/pending-payments/trf_5Xy9Kd1p/create-order\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"quoteId\": \"QUOTE123\",\n      \"accountId\": \"jane.doe@example.com\",\n      \"destination\": {\n        \"contactId\": \"string\",\n        \"contactEmail\": \"string\",\n        \"addressId\": \"string\"\n      },\n      \"originCountry\": \"CI\",\n      \"userData\": {\n        \"userType\": \"individual\",\n        \"firstName\": \"John\",\n        \"lastName\": \"Doe\",\n        \"userEmail\": \"user@virtuabroker.com\",\n        \"address\": \"123 Main St, Anytown, ES\",\n        \"taxDocumentType\": \"CC\",\n        \"taxId\": \"123-45-6789\",\n        \"country\": \"ES\",\n        \"state\": \"Madrid\",\n        \"postalCode\": \"12345\",\n        \"city\": \"Madrid\",\n        \"dob\": \"1990-01-01\",\n        \"phoneNumber\": \"+447700900123\",\n        \"kycId\": \"kyc-12345\",\n        \"activity\": \"worker\"\n      },\n      \"destinationUserData\": {\n        \"userType\": \"individual\",\n        \"firstName\": \"John\",\n        \"lastName\": \"Doe\",\n        \"userEmail\": \"user@virtuabroker.com\",\n        \"address\": \"123 Main St, Anytown, ES\",\n        \"taxDocumentType\": \"CC\",\n        \"taxId\": \"123-45-6789\",\n        \"country\": \"ES\",\n        \"state\": \"Madrid\",\n        \"postalCode\": \"12345\",\n        \"city\": \"Madrid\",\n        \"dob\": \"1990-01-01\",\n        \"phoneNumber\": \"+447700900123\",\n        \"kycId\": \"kyc-12345\",\n        \"activity\": \"worker\"\n      },\n      \"destinationTransferData\": {\n        \"type\": \"BALANCE\"\n      },\n      \"externalReference\": \"order-2026-000123\",\n      \"integrationSessionId\": \"int_a1B2c3D4e5F6g7H8\",\n      \"tradeDetails\": {\n        \"businessType\": \"GOODS_TRADE\",\n        \"contractNo\": \"string\",\n        \"website\": \"string\",\n        \"products\": [\n          {\n            \"name\": \"string\",\n            \"quantity\": 0,\n            \"unit\": \"string\",\n            \"category\": \"string\"\n          }\n        ]\n      },\n      \"transferId\": \"12345\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api.virtuabroker.com/v1/pending-payments/trf_5Xy9Kd1p/create-order\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"quoteId\": \"QUOTE123\",\n        \"accountId\": \"jane.doe@example.com\",\n        \"destination\": {\n            \"contactId\": \"string\",\n            \"contactEmail\": \"string\",\n            \"addressId\": \"string\"\n        },\n        \"originCountry\": \"CI\",\n        \"userData\": {\n            \"userType\": \"individual\",\n            \"firstName\": \"John\",\n            \"lastName\": \"Doe\",\n            \"userEmail\": \"user@virtuabroker.com\",\n            \"address\": \"123 Main St, Anytown, ES\",\n            \"taxDocumentType\": \"CC\",\n            \"taxId\": \"123-45-6789\",\n            \"country\": \"ES\",\n            \"state\": \"Madrid\",\n            \"postalCode\": \"12345\",\n            \"city\": \"Madrid\",\n            \"dob\": \"1990-01-01\",\n            \"phoneNumber\": \"+447700900123\",\n            \"kycId\": \"kyc-12345\",\n            \"activity\": \"worker\"\n        },\n        \"destinationUserData\": {\n            \"userType\": \"individual\",\n            \"firstName\": \"John\",\n            \"lastName\": \"Doe\",\n            \"userEmail\": \"user@virtuabroker.com\",\n            \"address\": \"123 Main St, Anytown, ES\",\n            \"taxDocumentType\": \"CC\",\n            \"taxId\": \"123-45-6789\",\n            \"country\": \"ES\",\n            \"state\": \"Madrid\",\n            \"postalCode\": \"12345\",\n            \"city\": \"Madrid\",\n            \"dob\": \"1990-01-01\",\n            \"phoneNumber\": \"+447700900123\",\n            \"kycId\": \"kyc-12345\",\n            \"activity\": \"worker\"\n        },\n        \"destinationTransferData\": {\n            \"type\": \"BALANCE\"\n        },\n        \"externalReference\": \"order-2026-000123\",\n        \"integrationSessionId\": \"int_a1B2c3D4e5F6g7H8\",\n        \"tradeDetails\": {\n            \"businessType\": \"GOODS_TRADE\",\n            \"contractNo\": \"string\",\n            \"website\": \"string\",\n            \"products\": [\n                {\n                    \"name\": \"string\",\n                    \"quantity\": 0,\n                    \"unit\": \"string\",\n                    \"category\": \"string\"\n                }\n            ]\n        },\n        \"transferId\": \"12345\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api.virtuabroker.com/v1/pending-payments/trf_5Xy9Kd1p/create-order\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"quoteId\": \"QUOTE123\",\n  \"accountId\": \"jane.doe@example.com\",\n  \"destination\": {\n    \"contactId\": \"string\",\n    \"contactEmail\": \"string\",\n    \"addressId\": \"string\"\n  },\n  \"originCountry\": \"CI\",\n  \"userData\": {\n    \"userType\": \"individual\",\n    \"firstName\": \"John\",\n    \"lastName\": \"Doe\",\n    \"userEmail\": \"user@virtuabroker.com\",\n    \"address\": \"123 Main St, Anytown, ES\",\n    \"taxDocumentType\": \"CC\",\n    \"taxId\": \"123-45-6789\",\n    \"country\": \"ES\",\n    \"state\": \"Madrid\",\n    \"postalCode\": \"12345\",\n    \"city\": \"Madrid\",\n    \"dob\": \"1990-01-01\",\n    \"phoneNumber\": \"+447700900123\",\n    \"kycId\": \"kyc-12345\",\n    \"activity\": \"worker\"\n  },\n  \"destinationUserData\": {\n    \"userType\": \"individual\",\n    \"firstName\": \"John\",\n    \"lastName\": \"Doe\",\n    \"userEmail\": \"user@virtuabroker.com\",\n    \"address\": \"123 Main St, Anytown, ES\",\n    \"taxDocumentType\": \"CC\",\n    \"taxId\": \"123-45-6789\",\n    \"country\": \"ES\",\n    \"state\": \"Madrid\",\n    \"postalCode\": \"12345\",\n    \"city\": \"Madrid\",\n    \"dob\": \"1990-01-01\",\n    \"phoneNumber\": \"+447700900123\",\n    \"kycId\": \"kyc-12345\",\n    \"activity\": \"worker\"\n  },\n  \"destinationTransferData\": {\n    \"type\": \"BALANCE\"\n  },\n  \"externalReference\": \"order-2026-000123\",\n  \"integrationSessionId\": \"int_a1B2c3D4e5F6g7H8\",\n  \"tradeDetails\": {\n    \"businessType\": \"GOODS_TRADE\",\n    \"contractNo\": \"string\",\n    \"website\": \"string\",\n    \"products\": [\n      {\n        \"name\": \"string\",\n        \"quantity\": 0,\n        \"unit\": \"string\",\n        \"category\": \"string\"\n      }\n    ]\n  },\n  \"transferId\": \"12345\"\n}'"
          }
        ]
      }
    },
    "/v1/pending-payments/{transferId}/remove-prelink": {
      "post": {
        "summary": "Remove a pre-link suggestion",
        "description": "Removes an automatic pre-linking suggestion from a pending transfer, allowing it to be matched to a different order or deposit.",
        "tags": [
          "Pending Payments"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string"
            },
            "required": true,
            "name": "transferId",
            "in": "path"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "transferId": {
                    "type": "string",
                    "description": "Transfer ID without provider prefix (from path parameter)",
                    "example": "12345"
                  },
                  "reason": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Reason for removing prelink (from request body)",
                    "example": "Incorrect prelink match"
                  }
                },
                "required": [
                  "transferId",
                  "reason"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Pre-link removed successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "message": {
                          "type": "string"
                        },
                        "transferId": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "transferId"
                      ]
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/pending-payments/trf_5Xy9Kd1p/remove-prelink\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"transferId\": \"12345\",\n      \"reason\": \"Incorrect prelink match\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api.virtuabroker.com/v1/pending-payments/trf_5Xy9Kd1p/remove-prelink\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"transferId\": \"12345\",\n        \"reason\": \"Incorrect prelink match\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api.virtuabroker.com/v1/pending-payments/trf_5Xy9Kd1p/remove-prelink\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"transferId\": \"12345\",\n  \"reason\": \"Incorrect prelink match\"\n}'"
          }
        ]
      }
    },
    "/v1/banking-accounts": {
      "get": {
        "summary": "List workspace banking accounts",
        "description": "Returns all Linked Business banking accounts (dedicated IBANs) provisioned for the authenticated workspace. One account per currency per banking provider. Filter by currency or status.",
        "tags": [
          "Banking Accounts"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 3,
              "maxLength": 3,
              "description": "Filter by ISO 4217 currency code (e.g. EUR, USD, GBP)."
            },
            "required": false,
            "description": "Filter by ISO 4217 currency code (e.g. EUR, USD, GBP).",
            "name": "currency",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "enum": [
                "PROVISIONING",
                "ACTIVE",
                "SUSPENDED",
                "CLOSED"
              ],
              "description": "Filter by account status."
            },
            "required": false,
            "description": "Filter by account status.",
            "name": "status",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "List of banking accounts",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "accounts": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string",
                                "description": "Banking account document ID."
                              },
                              "workspaceId": {
                                "type": "string"
                              },
                              "accountId": {
                                "type": "string",
                                "description": "The org/individual account that owns this banking account."
                              },
                              "currency": {
                                "type": "string",
                                "minLength": 3,
                                "maxLength": 3,
                                "description": "ISO 4217 currency code."
                              },
                              "country": {
                                "type": "string",
                                "minLength": 2,
                                "maxLength": 2,
                                "description": "ISO 3166-1 alpha-2 country code."
                              },
                              "isPrimary": {
                                "type": "boolean",
                                "description": "True if this is the preferred account for this currency."
                              },
                              "status": {
                                "type": "string",
                                "enum": [
                                  "PROVISIONING",
                                  "ACTIVE",
                                  "SUSPENDED",
                                  "CLOSED"
                                ]
                              },
                              "accountOwner": {
                                "type": "object",
                                "properties": {
                                  "entityName": {
                                    "type": "string",
                                    "minLength": 1
                                  },
                                  "jurisdiction": {
                                    "type": "string",
                                    "minLength": 2,
                                    "maxLength": 2
                                  },
                                  "licenseNumber": {
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "entityName",
                                  "jurisdiction"
                                ],
                                "additionalProperties": false
                              },
                              "bankDetails": {
                                "type": "object",
                                "properties": {
                                  "iban": {
                                    "type": "string",
                                    "nullable": true
                                  },
                                  "bic": {
                                    "type": "string",
                                    "nullable": true
                                  },
                                  "accountNumber": {
                                    "type": "string",
                                    "nullable": true
                                  },
                                  "accountHolderName": {
                                    "type": "string",
                                    "description": "Beneficiary name to use when sending the payment."
                                  },
                                  "bankName": {
                                    "type": "string",
                                    "description": "Name of the bank holding the account."
                                  },
                                  "country": {
                                    "type": "string"
                                  }
                                },
                                "additionalProperties": false,
                                "description": "Bank details populated once the account is ACTIVE."
                              },
                              "depositMethodId": {
                                "type": "string",
                                "description": "Linked deposit method ID (set once ACTIVE)."
                              },
                              "createdAt": {
                                "nullable": true
                              },
                              "updatedAt": {
                                "nullable": true
                              }
                            },
                            "required": [
                              "id",
                              "workspaceId",
                              "accountId",
                              "currency",
                              "country",
                              "isPrimary",
                              "status",
                              "accountOwner"
                            ],
                            "additionalProperties": false
                          }
                        },
                        "total": {
                          "type": "integer"
                        }
                      },
                      "required": [
                        "accounts",
                        "total"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/banking-accounts\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/banking-accounts\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/banking-accounts\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/banking-accounts/{bankingAccountId}": {
      "get": {
        "summary": "Get a banking account",
        "description": "Returns a single Linked Business banking account by its document ID. Returns 404 if the account does not exist or belongs to a different workspace.",
        "tags": [
          "Banking Accounts"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 1,
              "description": "Banking account document ID."
            },
            "required": true,
            "description": "Banking account document ID.",
            "name": "bankingAccountId",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Banking account details",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "description": "Banking account document ID."
                        },
                        "workspaceId": {
                          "type": "string"
                        },
                        "accountId": {
                          "type": "string",
                          "description": "The org/individual account that owns this banking account."
                        },
                        "currency": {
                          "type": "string",
                          "minLength": 3,
                          "maxLength": 3,
                          "description": "ISO 4217 currency code."
                        },
                        "country": {
                          "type": "string",
                          "minLength": 2,
                          "maxLength": 2,
                          "description": "ISO 3166-1 alpha-2 country code."
                        },
                        "isPrimary": {
                          "type": "boolean",
                          "description": "True if this is the preferred account for this currency."
                        },
                        "status": {
                          "type": "string",
                          "enum": [
                            "PROVISIONING",
                            "ACTIVE",
                            "SUSPENDED",
                            "CLOSED"
                          ]
                        },
                        "accountOwner": {
                          "type": "object",
                          "properties": {
                            "entityName": {
                              "type": "string",
                              "minLength": 1
                            },
                            "jurisdiction": {
                              "type": "string",
                              "minLength": 2,
                              "maxLength": 2
                            },
                            "licenseNumber": {
                              "type": "string"
                            }
                          },
                          "required": [
                            "entityName",
                            "jurisdiction"
                          ],
                          "additionalProperties": false
                        },
                        "bankDetails": {
                          "type": "object",
                          "properties": {
                            "iban": {
                              "type": "string",
                              "nullable": true
                            },
                            "bic": {
                              "type": "string",
                              "nullable": true
                            },
                            "accountNumber": {
                              "type": "string",
                              "nullable": true
                            },
                            "accountHolderName": {
                              "type": "string",
                              "description": "Beneficiary name to use when sending the payment."
                            },
                            "bankName": {
                              "type": "string",
                              "description": "Name of the bank holding the account."
                            },
                            "country": {
                              "type": "string"
                            }
                          },
                          "additionalProperties": false,
                          "description": "Bank details populated once the account is ACTIVE."
                        },
                        "depositMethodId": {
                          "type": "string",
                          "description": "Linked deposit method ID (set once ACTIVE)."
                        },
                        "createdAt": {
                          "nullable": true
                        },
                        "updatedAt": {
                          "nullable": true
                        }
                      },
                      "required": [
                        "id",
                        "workspaceId",
                        "accountId",
                        "currency",
                        "country",
                        "isPrimary",
                        "status",
                        "accountOwner"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "404": {
            "description": "Banking account not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/banking-accounts/ba_2Kd7Rn6t\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/banking-accounts/ba_2Kd7Rn6t\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/banking-accounts/ba_2Kd7Rn6t\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/banking/customers": {
      "post": {
        "summary": "Create a customer",
        "description": "Creates a managed end-user (customer) in your workspace: an `individual` (identified by email) or an `organisation` (assigned a generated id). Individuals start with KYC status `PENDING`; organisations start with KYB status `DRAFT`. The customer email is the identifier of an individual and cannot be changed later; it is case-insensitive (normalized to lowercase). Optionally pass `externalId` — your own stable identifier for the customer (for example your CRM record id). It is unique within your workspace, and creating again with the same `externalId` is idempotent: the existing customer is returned (HTTP 200) instead of creating a duplicate, ignoring any other payload differences. Retrieve the customer later with `GET /v1/banking/customers?externalId=...`.",
        "tags": [
          "Customers"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "oneOf": [
                  {
                    "type": "object",
                    "properties": {
                      "customerType": {
                        "type": "string",
                        "enum": [
                          "individual"
                        ]
                      },
                      "email": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 254,
                        "format": "email",
                        "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                        "description": "Customer email — the public identifier of an individual customer. Case-insensitive: it is normalized to lowercase."
                      },
                      "firstName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 35
                      },
                      "lastName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 35
                      },
                      "country": {
                        "type": "string",
                        "enum": [
                          "AW",
                          "AF",
                          "AO",
                          "AI",
                          "AX",
                          "AL",
                          "AD",
                          "AE",
                          "AR",
                          "AM",
                          "AS",
                          "AQ",
                          "TF",
                          "AG",
                          "AU",
                          "AT",
                          "AZ",
                          "BI",
                          "BE",
                          "BJ",
                          "BQ",
                          "BF",
                          "BD",
                          "BG",
                          "BH",
                          "BS",
                          "BA",
                          "BL",
                          "BY",
                          "BZ",
                          "BM",
                          "BO",
                          "BR",
                          "BB",
                          "BN",
                          "BT",
                          "BV",
                          "BW",
                          "CF",
                          "CA",
                          "CC",
                          "CH",
                          "CL",
                          "CN",
                          "CI",
                          "CM",
                          "CD",
                          "CG",
                          "CK",
                          "CO",
                          "KM",
                          "CV",
                          "CR",
                          "CU",
                          "CW",
                          "CX",
                          "KY",
                          "CY",
                          "CZ",
                          "DE",
                          "DJ",
                          "DM",
                          "DK",
                          "DO",
                          "DZ",
                          "EC",
                          "EG",
                          "ER",
                          "EH",
                          "ES",
                          "EE",
                          "ET",
                          "FI",
                          "FJ",
                          "FK",
                          "FR",
                          "FO",
                          "FM",
                          "GA",
                          "GB",
                          "GE",
                          "GG",
                          "GH",
                          "GI",
                          "GN",
                          "GP",
                          "GM",
                          "GW",
                          "GQ",
                          "GR",
                          "GD",
                          "GL",
                          "GT",
                          "GF",
                          "GU",
                          "GY",
                          "HK",
                          "HM",
                          "HN",
                          "HR",
                          "HT",
                          "HU",
                          "ID",
                          "IM",
                          "IN",
                          "IO",
                          "IE",
                          "IR",
                          "IQ",
                          "IS",
                          "IL",
                          "IT",
                          "JM",
                          "JE",
                          "JO",
                          "JP",
                          "KZ",
                          "KE",
                          "KG",
                          "KH",
                          "KI",
                          "KN",
                          "KR",
                          "KW",
                          "LA",
                          "LB",
                          "LR",
                          "LY",
                          "LC",
                          "LI",
                          "LK",
                          "LS",
                          "LT",
                          "LU",
                          "LV",
                          "MO",
                          "MF",
                          "MA",
                          "MC",
                          "MD",
                          "MG",
                          "MV",
                          "MX",
                          "MH",
                          "MK",
                          "ML",
                          "MT",
                          "MM",
                          "ME",
                          "MN",
                          "MP",
                          "MZ",
                          "MR",
                          "MS",
                          "MQ",
                          "MU",
                          "MW",
                          "MY",
                          "YT",
                          "NA",
                          "NC",
                          "NE",
                          "NF",
                          "NG",
                          "NI",
                          "NU",
                          "NL",
                          "NO",
                          "NP",
                          "NR",
                          "NZ",
                          "OM",
                          "PK",
                          "PA",
                          "PN",
                          "PE",
                          "PH",
                          "PW",
                          "PG",
                          "PL",
                          "PR",
                          "KP",
                          "PT",
                          "PY",
                          "PS",
                          "PF",
                          "QA",
                          "RE",
                          "RO",
                          "RU",
                          "RW",
                          "SA",
                          "SD",
                          "SN",
                          "SG",
                          "GS",
                          "SH",
                          "SJ",
                          "SB",
                          "SL",
                          "SV",
                          "SM",
                          "SO",
                          "PM",
                          "RS",
                          "SS",
                          "ST",
                          "SR",
                          "SK",
                          "SI",
                          "SE",
                          "SZ",
                          "SX",
                          "SC",
                          "SY",
                          "TC",
                          "TD",
                          "TG",
                          "TH",
                          "TJ",
                          "TK",
                          "TM",
                          "TL",
                          "TO",
                          "TT",
                          "TN",
                          "TR",
                          "TV",
                          "TW",
                          "TZ",
                          "UG",
                          "UA",
                          "UM",
                          "UY",
                          "US",
                          "UZ",
                          "VA",
                          "VC",
                          "VE",
                          "VG",
                          "VI",
                          "VN",
                          "VU",
                          "WF",
                          "WS",
                          "YE",
                          "ZA",
                          "ZM",
                          "ZW"
                        ],
                        "description": "ISO 3166-1 alpha-2 residence country."
                      },
                      "language": {
                        "type": "string",
                        "enum": [
                          "en",
                          "es",
                          "pt",
                          "fr",
                          "de",
                          "it"
                        ]
                      },
                      "defaultCurrency": {
                        "type": "string",
                        "enum": [
                          "AED",
                          "AFN",
                          "ALL",
                          "AMD",
                          "ANG",
                          "AOA",
                          "ARS",
                          "AUD",
                          "AWG",
                          "AZN",
                          "BAM",
                          "BBD",
                          "BDT",
                          "BGN",
                          "BHD",
                          "BIF",
                          "BMD",
                          "BND",
                          "BOB",
                          "BRL",
                          "BSD",
                          "BTN",
                          "BWP",
                          "BYN",
                          "BZD",
                          "CAD",
                          "CDF",
                          "CHF",
                          "CLP",
                          "CNY",
                          "COP",
                          "CRC",
                          "CUC",
                          "CUP",
                          "CVE",
                          "CZK",
                          "DJF",
                          "DKK",
                          "DOP",
                          "DZD",
                          "EGP",
                          "ERN",
                          "ETB",
                          "EUR",
                          "FJD",
                          "FKP",
                          "GBP",
                          "GEL",
                          "GHS",
                          "GIP",
                          "GMD",
                          "GNF",
                          "GTQ",
                          "GYD",
                          "HKD",
                          "HNL",
                          "HRK",
                          "HTG",
                          "HUF",
                          "IDR",
                          "ILS",
                          "INR",
                          "IQD",
                          "IRR",
                          "ISK",
                          "JMD",
                          "JOD",
                          "JPY",
                          "KES",
                          "KGS",
                          "KHR",
                          "KMF",
                          "KPW",
                          "KRW",
                          "KWD",
                          "KYD",
                          "KZT",
                          "LAK",
                          "LBP",
                          "LKR",
                          "LRD",
                          "LSL",
                          "LYD",
                          "MAD",
                          "MDL",
                          "MGA",
                          "MKD",
                          "MMK",
                          "MNT",
                          "MOP",
                          "MRU",
                          "MUR",
                          "MVR",
                          "MWK",
                          "MXN",
                          "MYR",
                          "MZN",
                          "NAD",
                          "NGN",
                          "NIO",
                          "NOK",
                          "NPR",
                          "NZD",
                          "OMR",
                          "PAB",
                          "PEN",
                          "PGK",
                          "PHP",
                          "PKR",
                          "PLN",
                          "PYG",
                          "QAR",
                          "RON",
                          "RSD",
                          "RUB",
                          "RWF",
                          "SAR",
                          "SBD",
                          "SCR",
                          "SDG",
                          "SEK",
                          "SGD",
                          "SHP",
                          "SLE",
                          "SLL",
                          "SOS",
                          "SRD",
                          "SSP",
                          "STN",
                          "SVC",
                          "SYP",
                          "SZL",
                          "THB",
                          "TJS",
                          "TMT",
                          "TND",
                          "TOP",
                          "TRY",
                          "TTD",
                          "TVD",
                          "TWD",
                          "TZS",
                          "UAH",
                          "UGX",
                          "USD",
                          "UYU",
                          "UYW",
                          "UZS",
                          "VED",
                          "VES",
                          "VND",
                          "VUV",
                          "WST",
                          "XAF",
                          "XAG",
                          "XAU",
                          "XBA",
                          "XBB",
                          "XBC",
                          "XBD",
                          "XCD",
                          "XDR",
                          "XOF",
                          "XPD",
                          "XPF",
                          "XPT",
                          "XSU",
                          "XTS",
                          "XUA",
                          "XXX",
                          "YER",
                          "ZAR",
                          "ZMW",
                          "ZWL"
                        ],
                        "description": "ISO 4217 currency code (3-letter alphabetic code)"
                      },
                      "externalId": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._-]+$",
                        "description": "Your own stable identifier for this customer (for example your CRM record id). 1-128 characters: letters, digits, dots, underscores, hyphens. Unique within your workspace and immutable once set."
                      }
                    },
                    "required": [
                      "customerType",
                      "email",
                      "firstName",
                      "lastName",
                      "country"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "object",
                    "properties": {
                      "customerType": {
                        "type": "string",
                        "enum": [
                          "organisation"
                        ]
                      },
                      "companyName": {
                        "type": "string",
                        "minLength": 1,
                        "description": "Legal company name."
                      },
                      "country": {
                        "type": "string",
                        "enum": [
                          "US",
                          "CA",
                          "GB",
                          "DE",
                          "FR",
                          "AU",
                          "JP",
                          "KR",
                          "SE",
                          "NO",
                          "DK",
                          "FI",
                          "NL",
                          "BE",
                          "CH",
                          "AT",
                          "NZ",
                          "SG",
                          "IE",
                          "LU",
                          "PT",
                          "ES",
                          "IT",
                          "GR",
                          "CZ",
                          "PL",
                          "HU",
                          "SK",
                          "SI",
                          "EE",
                          "LT",
                          "LV",
                          "IS",
                          "MT",
                          "CY",
                          "HR",
                          "RO",
                          "BG",
                          "BR",
                          "AR",
                          "CL",
                          "MX",
                          "CO",
                          "PE",
                          "PA",
                          "UY",
                          "BO",
                          "ZA",
                          "NG",
                          "KE",
                          "GH",
                          "TZ",
                          "UG",
                          "RW",
                          "MW",
                          "ZM",
                          "BW",
                          "CD",
                          "CI",
                          "CM",
                          "IL",
                          "AE",
                          "QA",
                          "SA",
                          "OM",
                          "KW",
                          "BH",
                          "MY",
                          "PH",
                          "TH",
                          "VN",
                          "ID",
                          "IN",
                          "LK",
                          "NP",
                          "BD",
                          "PK",
                          "EG",
                          "MA",
                          "DZ",
                          "TN",
                          "JO",
                          "LB",
                          "TR",
                          "KH",
                          "MM",
                          "LA",
                          "EN",
                          "BT",
                          "VE",
                          "TW",
                          "HK",
                          "CN"
                        ],
                        "description": "Country of incorporation (ISO 3166-1 alpha-2)."
                      },
                      "registrationNumber": {
                        "type": "string",
                        "minLength": 1
                      },
                      "language": {
                        "type": "string",
                        "enum": [
                          "en",
                          "es",
                          "pt",
                          "fr",
                          "de",
                          "it"
                        ]
                      },
                      "defaultCurrency": {
                        "type": "string",
                        "enum": [
                          "AED",
                          "AFN",
                          "ALL",
                          "AMD",
                          "ANG",
                          "AOA",
                          "ARS",
                          "AUD",
                          "AWG",
                          "AZN",
                          "BAM",
                          "BBD",
                          "BDT",
                          "BGN",
                          "BHD",
                          "BIF",
                          "BMD",
                          "BND",
                          "BOB",
                          "BRL",
                          "BSD",
                          "BTN",
                          "BWP",
                          "BYN",
                          "BZD",
                          "CAD",
                          "CDF",
                          "CHF",
                          "CLP",
                          "CNY",
                          "COP",
                          "CRC",
                          "CUC",
                          "CUP",
                          "CVE",
                          "CZK",
                          "DJF",
                          "DKK",
                          "DOP",
                          "DZD",
                          "EGP",
                          "ERN",
                          "ETB",
                          "EUR",
                          "FJD",
                          "FKP",
                          "GBP",
                          "GEL",
                          "GHS",
                          "GIP",
                          "GMD",
                          "GNF",
                          "GTQ",
                          "GYD",
                          "HKD",
                          "HNL",
                          "HRK",
                          "HTG",
                          "HUF",
                          "IDR",
                          "ILS",
                          "INR",
                          "IQD",
                          "IRR",
                          "ISK",
                          "JMD",
                          "JOD",
                          "JPY",
                          "KES",
                          "KGS",
                          "KHR",
                          "KMF",
                          "KPW",
                          "KRW",
                          "KWD",
                          "KYD",
                          "KZT",
                          "LAK",
                          "LBP",
                          "LKR",
                          "LRD",
                          "LSL",
                          "LYD",
                          "MAD",
                          "MDL",
                          "MGA",
                          "MKD",
                          "MMK",
                          "MNT",
                          "MOP",
                          "MRU",
                          "MUR",
                          "MVR",
                          "MWK",
                          "MXN",
                          "MYR",
                          "MZN",
                          "NAD",
                          "NGN",
                          "NIO",
                          "NOK",
                          "NPR",
                          "NZD",
                          "OMR",
                          "PAB",
                          "PEN",
                          "PGK",
                          "PHP",
                          "PKR",
                          "PLN",
                          "PYG",
                          "QAR",
                          "RON",
                          "RSD",
                          "RUB",
                          "RWF",
                          "SAR",
                          "SBD",
                          "SCR",
                          "SDG",
                          "SEK",
                          "SGD",
                          "SHP",
                          "SLE",
                          "SLL",
                          "SOS",
                          "SRD",
                          "SSP",
                          "STN",
                          "SVC",
                          "SYP",
                          "SZL",
                          "THB",
                          "TJS",
                          "TMT",
                          "TND",
                          "TOP",
                          "TRY",
                          "TTD",
                          "TVD",
                          "TWD",
                          "TZS",
                          "UAH",
                          "UGX",
                          "USD",
                          "UYU",
                          "UYW",
                          "UZS",
                          "VED",
                          "VES",
                          "VND",
                          "VUV",
                          "WST",
                          "XAF",
                          "XAG",
                          "XAU",
                          "XBA",
                          "XBB",
                          "XBC",
                          "XBD",
                          "XCD",
                          "XDR",
                          "XOF",
                          "XPD",
                          "XPF",
                          "XPT",
                          "XSU",
                          "XTS",
                          "XUA",
                          "XXX",
                          "YER",
                          "ZAR",
                          "ZMW",
                          "ZWL"
                        ],
                        "description": "ISO 4217 currency code (3-letter alphabetic code)"
                      },
                      "externalId": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._-]+$",
                        "description": "Your own stable identifier for this customer (for example your CRM record id). 1-128 characters: letters, digits, dots, underscores, hyphens. Unique within your workspace and immutable once set."
                      }
                    },
                    "required": [
                      "customerType",
                      "companyName"
                    ],
                    "additionalProperties": false
                  }
                ]
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Customer created",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "customerId": {
                          "type": "string",
                          "minLength": 1,
                          "description": "Stable customer identifier: the email for individuals, a UUID for organisations."
                        },
                        "customerType": {
                          "type": "string",
                          "enum": [
                            "individual",
                            "organisation"
                          ],
                          "description": "Type of customer: a person or a business."
                        },
                        "externalId": {
                          "type": "string",
                          "description": "The identifier you supplied at creation to link this customer to your own system. Absent when the customer was created without one."
                        },
                        "email": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 254,
                          "format": "email",
                          "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                          "description": "Customer email. Present for individuals (equals customerId); individuals are identified by email, so it cannot be updated."
                        },
                        "firstName": {
                          "type": "string",
                          "description": "First name (individuals)."
                        },
                        "lastName": {
                          "type": "string",
                          "description": "Last name (individuals)."
                        },
                        "displayName": {
                          "type": "string",
                          "description": "Human-readable name: full name for individuals, legal company name for organisations."
                        },
                        "country": {
                          "type": "string",
                          "minLength": 2,
                          "maxLength": 2,
                          "description": "ISO 3166-1 alpha-2 country: residence country for individuals, incorporation country for organisations."
                        },
                        "language": {
                          "type": "string",
                          "enum": [
                            "en",
                            "es",
                            "pt",
                            "fr",
                            "de",
                            "it"
                          ],
                          "description": "Preferred language."
                        },
                        "defaultCurrency": {
                          "type": "string",
                          "enum": [
                            "AED",
                            "AFN",
                            "ALL",
                            "AMD",
                            "ANG",
                            "AOA",
                            "ARS",
                            "AUD",
                            "AWG",
                            "AZN",
                            "BAM",
                            "BBD",
                            "BDT",
                            "BGN",
                            "BHD",
                            "BIF",
                            "BMD",
                            "BND",
                            "BOB",
                            "BRL",
                            "BSD",
                            "BTN",
                            "BWP",
                            "BYN",
                            "BZD",
                            "CAD",
                            "CDF",
                            "CHF",
                            "CLP",
                            "CNY",
                            "COP",
                            "CRC",
                            "CUC",
                            "CUP",
                            "CVE",
                            "CZK",
                            "DJF",
                            "DKK",
                            "DOP",
                            "DZD",
                            "EGP",
                            "ERN",
                            "ETB",
                            "EUR",
                            "FJD",
                            "FKP",
                            "GBP",
                            "GEL",
                            "GHS",
                            "GIP",
                            "GMD",
                            "GNF",
                            "GTQ",
                            "GYD",
                            "HKD",
                            "HNL",
                            "HRK",
                            "HTG",
                            "HUF",
                            "IDR",
                            "ILS",
                            "INR",
                            "IQD",
                            "IRR",
                            "ISK",
                            "JMD",
                            "JOD",
                            "JPY",
                            "KES",
                            "KGS",
                            "KHR",
                            "KMF",
                            "KPW",
                            "KRW",
                            "KWD",
                            "KYD",
                            "KZT",
                            "LAK",
                            "LBP",
                            "LKR",
                            "LRD",
                            "LSL",
                            "LYD",
                            "MAD",
                            "MDL",
                            "MGA",
                            "MKD",
                            "MMK",
                            "MNT",
                            "MOP",
                            "MRU",
                            "MUR",
                            "MVR",
                            "MWK",
                            "MXN",
                            "MYR",
                            "MZN",
                            "NAD",
                            "NGN",
                            "NIO",
                            "NOK",
                            "NPR",
                            "NZD",
                            "OMR",
                            "PAB",
                            "PEN",
                            "PGK",
                            "PHP",
                            "PKR",
                            "PLN",
                            "PYG",
                            "QAR",
                            "RON",
                            "RSD",
                            "RUB",
                            "RWF",
                            "SAR",
                            "SBD",
                            "SCR",
                            "SDG",
                            "SEK",
                            "SGD",
                            "SHP",
                            "SLE",
                            "SLL",
                            "SOS",
                            "SRD",
                            "SSP",
                            "STN",
                            "SVC",
                            "SYP",
                            "SZL",
                            "THB",
                            "TJS",
                            "TMT",
                            "TND",
                            "TOP",
                            "TRY",
                            "TTD",
                            "TVD",
                            "TWD",
                            "TZS",
                            "UAH",
                            "UGX",
                            "USD",
                            "UYU",
                            "UYW",
                            "UZS",
                            "VED",
                            "VES",
                            "VND",
                            "VUV",
                            "WST",
                            "XAF",
                            "XAG",
                            "XAU",
                            "XBA",
                            "XBB",
                            "XBC",
                            "XBD",
                            "XCD",
                            "XDR",
                            "XOF",
                            "XPD",
                            "XPF",
                            "XPT",
                            "XSU",
                            "XTS",
                            "XUA",
                            "XXX",
                            "YER",
                            "ZAR",
                            "ZMW",
                            "ZWL"
                          ],
                          "description": "Default currency for this customer."
                        },
                        "kycStatus": {
                          "type": "string",
                          "enum": [
                            "PENDING",
                            "REVIEWING",
                            "IN_PROGRESS",
                            "APPROVED",
                            "REJECTED",
                            "NOT_AVAILABLE"
                          ],
                          "description": "Identity verification (KYC) status. NOT_AVAILABLE for organisations (see kybStatus)."
                        },
                        "kybStatus": {
                          "type": "string",
                          "enum": [
                            "DRAFT",
                            "PENDING_REVIEW",
                            "APPROVED",
                            "REJECTED"
                          ],
                          "description": "Business verification (KYB) status. Present for organisations."
                        },
                        "createdAt": {
                          "type": "number",
                          "description": "Creation timestamp (epoch milliseconds)."
                        },
                        "updatedAt": {
                          "type": "number",
                          "description": "Last identity/verification update timestamp (epoch milliseconds)."
                        }
                      },
                      "required": [
                        "customerId",
                        "customerType",
                        "displayName",
                        "kycStatus",
                        "createdAt",
                        "updatedAt"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "409": {
            "description": "A customer with this email already exists",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/banking/customers\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"customerType\": \"individual\",\n      \"email\": \"string\",\n      \"firstName\": \"string\",\n      \"lastName\": \"string\",\n      \"country\": \"AW\",\n      \"language\": \"en\",\n      \"defaultCurrency\": \"AED\",\n      \"externalId\": \"string\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api.virtuabroker.com/v1/banking/customers\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"customerType\": \"individual\",\n        \"email\": \"string\",\n        \"firstName\": \"string\",\n        \"lastName\": \"string\",\n        \"country\": \"AW\",\n        \"language\": \"en\",\n        \"defaultCurrency\": \"AED\",\n        \"externalId\": \"string\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api.virtuabroker.com/v1/banking/customers\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"customerType\": \"individual\",\n  \"email\": \"string\",\n  \"firstName\": \"string\",\n  \"lastName\": \"string\",\n  \"country\": \"AW\",\n  \"language\": \"en\",\n  \"defaultCurrency\": \"AED\",\n  \"externalId\": \"string\"\n}'"
          }
        ]
      },
      "get": {
        "summary": "List customers",
        "description": "Lists the customers (individuals and organisations) of the authenticated workspace. Paginated via `page`/`limit`; use `GET /v1/banking/customers/count` for the total under the same filter. Pass `externalId` to fetch only the customer you created with that identifier (exact match; an unknown `externalId` returns an empty list).",
        "tags": [
          "Customers"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "integer",
              "minimum": 1,
              "default": 1
            },
            "required": false,
            "name": "page",
            "in": "query"
          },
          {
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100,
              "default": 50
            },
            "required": false,
            "name": "limit",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 128,
              "pattern": "^[A-Za-z0-9._-]+$",
              "description": "Return only the customer you created with this externalId (exact match). Unknown externalId returns an empty list."
            },
            "required": false,
            "description": "Return only the customer you created with this externalId (exact match). Unknown externalId returns an empty list.",
            "name": "externalId",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "List of customers",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "customerId": {
                            "type": "string",
                            "minLength": 1,
                            "description": "Stable customer identifier: the email for individuals, a UUID for organisations."
                          },
                          "customerType": {
                            "type": "string",
                            "enum": [
                              "individual",
                              "organisation"
                            ],
                            "description": "Type of customer: a person or a business."
                          },
                          "externalId": {
                            "type": "string",
                            "description": "The identifier you supplied at creation to link this customer to your own system. Absent when the customer was created without one."
                          },
                          "email": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 254,
                            "format": "email",
                            "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                            "description": "Customer email. Present for individuals (equals customerId); individuals are identified by email, so it cannot be updated."
                          },
                          "firstName": {
                            "type": "string",
                            "description": "First name (individuals)."
                          },
                          "lastName": {
                            "type": "string",
                            "description": "Last name (individuals)."
                          },
                          "displayName": {
                            "type": "string",
                            "description": "Human-readable name: full name for individuals, legal company name for organisations."
                          },
                          "country": {
                            "type": "string",
                            "minLength": 2,
                            "maxLength": 2,
                            "description": "ISO 3166-1 alpha-2 country: residence country for individuals, incorporation country for organisations."
                          },
                          "language": {
                            "type": "string",
                            "enum": [
                              "en",
                              "es",
                              "pt",
                              "fr",
                              "de",
                              "it"
                            ],
                            "description": "Preferred language."
                          },
                          "defaultCurrency": {
                            "type": "string",
                            "enum": [
                              "AED",
                              "AFN",
                              "ALL",
                              "AMD",
                              "ANG",
                              "AOA",
                              "ARS",
                              "AUD",
                              "AWG",
                              "AZN",
                              "BAM",
                              "BBD",
                              "BDT",
                              "BGN",
                              "BHD",
                              "BIF",
                              "BMD",
                              "BND",
                              "BOB",
                              "BRL",
                              "BSD",
                              "BTN",
                              "BWP",
                              "BYN",
                              "BZD",
                              "CAD",
                              "CDF",
                              "CHF",
                              "CLP",
                              "CNY",
                              "COP",
                              "CRC",
                              "CUC",
                              "CUP",
                              "CVE",
                              "CZK",
                              "DJF",
                              "DKK",
                              "DOP",
                              "DZD",
                              "EGP",
                              "ERN",
                              "ETB",
                              "EUR",
                              "FJD",
                              "FKP",
                              "GBP",
                              "GEL",
                              "GHS",
                              "GIP",
                              "GMD",
                              "GNF",
                              "GTQ",
                              "GYD",
                              "HKD",
                              "HNL",
                              "HRK",
                              "HTG",
                              "HUF",
                              "IDR",
                              "ILS",
                              "INR",
                              "IQD",
                              "IRR",
                              "ISK",
                              "JMD",
                              "JOD",
                              "JPY",
                              "KES",
                              "KGS",
                              "KHR",
                              "KMF",
                              "KPW",
                              "KRW",
                              "KWD",
                              "KYD",
                              "KZT",
                              "LAK",
                              "LBP",
                              "LKR",
                              "LRD",
                              "LSL",
                              "LYD",
                              "MAD",
                              "MDL",
                              "MGA",
                              "MKD",
                              "MMK",
                              "MNT",
                              "MOP",
                              "MRU",
                              "MUR",
                              "MVR",
                              "MWK",
                              "MXN",
                              "MYR",
                              "MZN",
                              "NAD",
                              "NGN",
                              "NIO",
                              "NOK",
                              "NPR",
                              "NZD",
                              "OMR",
                              "PAB",
                              "PEN",
                              "PGK",
                              "PHP",
                              "PKR",
                              "PLN",
                              "PYG",
                              "QAR",
                              "RON",
                              "RSD",
                              "RUB",
                              "RWF",
                              "SAR",
                              "SBD",
                              "SCR",
                              "SDG",
                              "SEK",
                              "SGD",
                              "SHP",
                              "SLE",
                              "SLL",
                              "SOS",
                              "SRD",
                              "SSP",
                              "STN",
                              "SVC",
                              "SYP",
                              "SZL",
                              "THB",
                              "TJS",
                              "TMT",
                              "TND",
                              "TOP",
                              "TRY",
                              "TTD",
                              "TVD",
                              "TWD",
                              "TZS",
                              "UAH",
                              "UGX",
                              "USD",
                              "UYU",
                              "UYW",
                              "UZS",
                              "VED",
                              "VES",
                              "VND",
                              "VUV",
                              "WST",
                              "XAF",
                              "XAG",
                              "XAU",
                              "XBA",
                              "XBB",
                              "XBC",
                              "XBD",
                              "XCD",
                              "XDR",
                              "XOF",
                              "XPD",
                              "XPF",
                              "XPT",
                              "XSU",
                              "XTS",
                              "XUA",
                              "XXX",
                              "YER",
                              "ZAR",
                              "ZMW",
                              "ZWL"
                            ],
                            "description": "Default currency for this customer."
                          },
                          "kycStatus": {
                            "type": "string",
                            "enum": [
                              "PENDING",
                              "REVIEWING",
                              "IN_PROGRESS",
                              "APPROVED",
                              "REJECTED",
                              "NOT_AVAILABLE"
                            ],
                            "description": "Identity verification (KYC) status. NOT_AVAILABLE for organisations (see kybStatus)."
                          },
                          "kybStatus": {
                            "type": "string",
                            "enum": [
                              "DRAFT",
                              "PENDING_REVIEW",
                              "APPROVED",
                              "REJECTED"
                            ],
                            "description": "Business verification (KYB) status. Present for organisations."
                          },
                          "createdAt": {
                            "type": "number",
                            "description": "Creation timestamp (epoch milliseconds)."
                          },
                          "updatedAt": {
                            "type": "number",
                            "description": "Last identity/verification update timestamp (epoch milliseconds)."
                          }
                        },
                        "required": [
                          "customerId",
                          "customerType",
                          "displayName",
                          "kycStatus",
                          "createdAt",
                          "updatedAt"
                        ],
                        "additionalProperties": false
                      }
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/banking/customers\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/banking/customers\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/banking/customers\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/banking/customers/count": {
      "get": {
        "summary": "Count customers",
        "description": "Returns the total number of customers in the authenticated workspace (same filter as the list endpoint).",
        "tags": [
          "Customers"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "responses": {
          "200": {
            "description": "Customer count",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "count": {
                          "type": "integer"
                        }
                      },
                      "required": [
                        "count"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/banking/customers/count\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/banking/customers/count\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/banking/customers/count\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/banking/customers/{customerId}": {
      "get": {
        "summary": "Get a customer",
        "description": "Returns a single customer by id — the email for individuals (URL-encoded), the generated id for organisations. Returns 404 if the customer does not exist in your workspace.",
        "tags": [
          "Customers"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 1,
              "description": "Customer identifier: the email for individuals (URL-encoded, case-insensitive), the UUID for organisations."
            },
            "required": true,
            "description": "Customer identifier: the email for individuals (URL-encoded, case-insensitive), the UUID for organisations.",
            "name": "customerId",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Customer details, including verification status",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "customerId": {
                          "type": "string",
                          "minLength": 1,
                          "description": "Stable customer identifier: the email for individuals, a UUID for organisations."
                        },
                        "customerType": {
                          "type": "string",
                          "enum": [
                            "individual",
                            "organisation"
                          ],
                          "description": "Type of customer: a person or a business."
                        },
                        "externalId": {
                          "type": "string",
                          "description": "The identifier you supplied at creation to link this customer to your own system. Absent when the customer was created without one."
                        },
                        "email": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 254,
                          "format": "email",
                          "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                          "description": "Customer email. Present for individuals (equals customerId); individuals are identified by email, so it cannot be updated."
                        },
                        "firstName": {
                          "type": "string",
                          "description": "First name (individuals)."
                        },
                        "lastName": {
                          "type": "string",
                          "description": "Last name (individuals)."
                        },
                        "displayName": {
                          "type": "string",
                          "description": "Human-readable name: full name for individuals, legal company name for organisations."
                        },
                        "country": {
                          "type": "string",
                          "minLength": 2,
                          "maxLength": 2,
                          "description": "ISO 3166-1 alpha-2 country: residence country for individuals, incorporation country for organisations."
                        },
                        "language": {
                          "type": "string",
                          "enum": [
                            "en",
                            "es",
                            "pt",
                            "fr",
                            "de",
                            "it"
                          ],
                          "description": "Preferred language."
                        },
                        "defaultCurrency": {
                          "type": "string",
                          "enum": [
                            "AED",
                            "AFN",
                            "ALL",
                            "AMD",
                            "ANG",
                            "AOA",
                            "ARS",
                            "AUD",
                            "AWG",
                            "AZN",
                            "BAM",
                            "BBD",
                            "BDT",
                            "BGN",
                            "BHD",
                            "BIF",
                            "BMD",
                            "BND",
                            "BOB",
                            "BRL",
                            "BSD",
                            "BTN",
                            "BWP",
                            "BYN",
                            "BZD",
                            "CAD",
                            "CDF",
                            "CHF",
                            "CLP",
                            "CNY",
                            "COP",
                            "CRC",
                            "CUC",
                            "CUP",
                            "CVE",
                            "CZK",
                            "DJF",
                            "DKK",
                            "DOP",
                            "DZD",
                            "EGP",
                            "ERN",
                            "ETB",
                            "EUR",
                            "FJD",
                            "FKP",
                            "GBP",
                            "GEL",
                            "GHS",
                            "GIP",
                            "GMD",
                            "GNF",
                            "GTQ",
                            "GYD",
                            "HKD",
                            "HNL",
                            "HRK",
                            "HTG",
                            "HUF",
                            "IDR",
                            "ILS",
                            "INR",
                            "IQD",
                            "IRR",
                            "ISK",
                            "JMD",
                            "JOD",
                            "JPY",
                            "KES",
                            "KGS",
                            "KHR",
                            "KMF",
                            "KPW",
                            "KRW",
                            "KWD",
                            "KYD",
                            "KZT",
                            "LAK",
                            "LBP",
                            "LKR",
                            "LRD",
                            "LSL",
                            "LYD",
                            "MAD",
                            "MDL",
                            "MGA",
                            "MKD",
                            "MMK",
                            "MNT",
                            "MOP",
                            "MRU",
                            "MUR",
                            "MVR",
                            "MWK",
                            "MXN",
                            "MYR",
                            "MZN",
                            "NAD",
                            "NGN",
                            "NIO",
                            "NOK",
                            "NPR",
                            "NZD",
                            "OMR",
                            "PAB",
                            "PEN",
                            "PGK",
                            "PHP",
                            "PKR",
                            "PLN",
                            "PYG",
                            "QAR",
                            "RON",
                            "RSD",
                            "RUB",
                            "RWF",
                            "SAR",
                            "SBD",
                            "SCR",
                            "SDG",
                            "SEK",
                            "SGD",
                            "SHP",
                            "SLE",
                            "SLL",
                            "SOS",
                            "SRD",
                            "SSP",
                            "STN",
                            "SVC",
                            "SYP",
                            "SZL",
                            "THB",
                            "TJS",
                            "TMT",
                            "TND",
                            "TOP",
                            "TRY",
                            "TTD",
                            "TVD",
                            "TWD",
                            "TZS",
                            "UAH",
                            "UGX",
                            "USD",
                            "UYU",
                            "UYW",
                            "UZS",
                            "VED",
                            "VES",
                            "VND",
                            "VUV",
                            "WST",
                            "XAF",
                            "XAG",
                            "XAU",
                            "XBA",
                            "XBB",
                            "XBC",
                            "XBD",
                            "XCD",
                            "XDR",
                            "XOF",
                            "XPD",
                            "XPF",
                            "XPT",
                            "XSU",
                            "XTS",
                            "XUA",
                            "XXX",
                            "YER",
                            "ZAR",
                            "ZMW",
                            "ZWL"
                          ],
                          "description": "Default currency for this customer."
                        },
                        "kycStatus": {
                          "type": "string",
                          "enum": [
                            "PENDING",
                            "REVIEWING",
                            "IN_PROGRESS",
                            "APPROVED",
                            "REJECTED",
                            "NOT_AVAILABLE"
                          ],
                          "description": "Identity verification (KYC) status. NOT_AVAILABLE for organisations (see kybStatus)."
                        },
                        "kybStatus": {
                          "type": "string",
                          "enum": [
                            "DRAFT",
                            "PENDING_REVIEW",
                            "APPROVED",
                            "REJECTED"
                          ],
                          "description": "Business verification (KYB) status. Present for organisations."
                        },
                        "createdAt": {
                          "type": "number",
                          "description": "Creation timestamp (epoch milliseconds)."
                        },
                        "updatedAt": {
                          "type": "number",
                          "description": "Last identity/verification update timestamp (epoch milliseconds)."
                        }
                      },
                      "required": [
                        "customerId",
                        "customerType",
                        "displayName",
                        "kycStatus",
                        "createdAt",
                        "updatedAt"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "404": {
            "description": "Customer not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/banking/customers/YOUR_CUSTOMERID\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/banking/customers/YOUR_CUSTOMERID\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/banking/customers/YOUR_CUSTOMERID\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      },
      "patch": {
        "summary": "Update a customer",
        "description": "Updates the public-safe preference fields of a customer (`language`, `defaultCurrency`). Identity fields are immutable here: an individual customer is identified by email, so the email cannot be changed.",
        "tags": [
          "Customers"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 1,
              "description": "Customer identifier: the email for individuals (URL-encoded, case-insensitive), the UUID for organisations."
            },
            "required": true,
            "description": "Customer identifier: the email for individuals (URL-encoded, case-insensitive), the UUID for organisations.",
            "name": "customerId",
            "in": "path"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "language": {
                    "type": "string",
                    "enum": [
                      "en",
                      "es",
                      "pt",
                      "fr",
                      "de",
                      "it"
                    ]
                  },
                  "defaultCurrency": {
                    "type": "string",
                    "enum": [
                      "AED",
                      "AFN",
                      "ALL",
                      "AMD",
                      "ANG",
                      "AOA",
                      "ARS",
                      "AUD",
                      "AWG",
                      "AZN",
                      "BAM",
                      "BBD",
                      "BDT",
                      "BGN",
                      "BHD",
                      "BIF",
                      "BMD",
                      "BND",
                      "BOB",
                      "BRL",
                      "BSD",
                      "BTN",
                      "BWP",
                      "BYN",
                      "BZD",
                      "CAD",
                      "CDF",
                      "CHF",
                      "CLP",
                      "CNY",
                      "COP",
                      "CRC",
                      "CUC",
                      "CUP",
                      "CVE",
                      "CZK",
                      "DJF",
                      "DKK",
                      "DOP",
                      "DZD",
                      "EGP",
                      "ERN",
                      "ETB",
                      "EUR",
                      "FJD",
                      "FKP",
                      "GBP",
                      "GEL",
                      "GHS",
                      "GIP",
                      "GMD",
                      "GNF",
                      "GTQ",
                      "GYD",
                      "HKD",
                      "HNL",
                      "HRK",
                      "HTG",
                      "HUF",
                      "IDR",
                      "ILS",
                      "INR",
                      "IQD",
                      "IRR",
                      "ISK",
                      "JMD",
                      "JOD",
                      "JPY",
                      "KES",
                      "KGS",
                      "KHR",
                      "KMF",
                      "KPW",
                      "KRW",
                      "KWD",
                      "KYD",
                      "KZT",
                      "LAK",
                      "LBP",
                      "LKR",
                      "LRD",
                      "LSL",
                      "LYD",
                      "MAD",
                      "MDL",
                      "MGA",
                      "MKD",
                      "MMK",
                      "MNT",
                      "MOP",
                      "MRU",
                      "MUR",
                      "MVR",
                      "MWK",
                      "MXN",
                      "MYR",
                      "MZN",
                      "NAD",
                      "NGN",
                      "NIO",
                      "NOK",
                      "NPR",
                      "NZD",
                      "OMR",
                      "PAB",
                      "PEN",
                      "PGK",
                      "PHP",
                      "PKR",
                      "PLN",
                      "PYG",
                      "QAR",
                      "RON",
                      "RSD",
                      "RUB",
                      "RWF",
                      "SAR",
                      "SBD",
                      "SCR",
                      "SDG",
                      "SEK",
                      "SGD",
                      "SHP",
                      "SLE",
                      "SLL",
                      "SOS",
                      "SRD",
                      "SSP",
                      "STN",
                      "SVC",
                      "SYP",
                      "SZL",
                      "THB",
                      "TJS",
                      "TMT",
                      "TND",
                      "TOP",
                      "TRY",
                      "TTD",
                      "TVD",
                      "TWD",
                      "TZS",
                      "UAH",
                      "UGX",
                      "USD",
                      "UYU",
                      "UYW",
                      "UZS",
                      "VED",
                      "VES",
                      "VND",
                      "VUV",
                      "WST",
                      "XAF",
                      "XAG",
                      "XAU",
                      "XBA",
                      "XBB",
                      "XBC",
                      "XBD",
                      "XCD",
                      "XDR",
                      "XOF",
                      "XPD",
                      "XPF",
                      "XPT",
                      "XSU",
                      "XTS",
                      "XUA",
                      "XXX",
                      "YER",
                      "ZAR",
                      "ZMW",
                      "ZWL"
                    ],
                    "description": "ISO 4217 currency code (3-letter alphabetic code)"
                  }
                },
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Updated customer",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "customerId": {
                          "type": "string",
                          "minLength": 1,
                          "description": "Stable customer identifier: the email for individuals, a UUID for organisations."
                        },
                        "customerType": {
                          "type": "string",
                          "enum": [
                            "individual",
                            "organisation"
                          ],
                          "description": "Type of customer: a person or a business."
                        },
                        "externalId": {
                          "type": "string",
                          "description": "The identifier you supplied at creation to link this customer to your own system. Absent when the customer was created without one."
                        },
                        "email": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 254,
                          "format": "email",
                          "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                          "description": "Customer email. Present for individuals (equals customerId); individuals are identified by email, so it cannot be updated."
                        },
                        "firstName": {
                          "type": "string",
                          "description": "First name (individuals)."
                        },
                        "lastName": {
                          "type": "string",
                          "description": "Last name (individuals)."
                        },
                        "displayName": {
                          "type": "string",
                          "description": "Human-readable name: full name for individuals, legal company name for organisations."
                        },
                        "country": {
                          "type": "string",
                          "minLength": 2,
                          "maxLength": 2,
                          "description": "ISO 3166-1 alpha-2 country: residence country for individuals, incorporation country for organisations."
                        },
                        "language": {
                          "type": "string",
                          "enum": [
                            "en",
                            "es",
                            "pt",
                            "fr",
                            "de",
                            "it"
                          ],
                          "description": "Preferred language."
                        },
                        "defaultCurrency": {
                          "type": "string",
                          "enum": [
                            "AED",
                            "AFN",
                            "ALL",
                            "AMD",
                            "ANG",
                            "AOA",
                            "ARS",
                            "AUD",
                            "AWG",
                            "AZN",
                            "BAM",
                            "BBD",
                            "BDT",
                            "BGN",
                            "BHD",
                            "BIF",
                            "BMD",
                            "BND",
                            "BOB",
                            "BRL",
                            "BSD",
                            "BTN",
                            "BWP",
                            "BYN",
                            "BZD",
                            "CAD",
                            "CDF",
                            "CHF",
                            "CLP",
                            "CNY",
                            "COP",
                            "CRC",
                            "CUC",
                            "CUP",
                            "CVE",
                            "CZK",
                            "DJF",
                            "DKK",
                            "DOP",
                            "DZD",
                            "EGP",
                            "ERN",
                            "ETB",
                            "EUR",
                            "FJD",
                            "FKP",
                            "GBP",
                            "GEL",
                            "GHS",
                            "GIP",
                            "GMD",
                            "GNF",
                            "GTQ",
                            "GYD",
                            "HKD",
                            "HNL",
                            "HRK",
                            "HTG",
                            "HUF",
                            "IDR",
                            "ILS",
                            "INR",
                            "IQD",
                            "IRR",
                            "ISK",
                            "JMD",
                            "JOD",
                            "JPY",
                            "KES",
                            "KGS",
                            "KHR",
                            "KMF",
                            "KPW",
                            "KRW",
                            "KWD",
                            "KYD",
                            "KZT",
                            "LAK",
                            "LBP",
                            "LKR",
                            "LRD",
                            "LSL",
                            "LYD",
                            "MAD",
                            "MDL",
                            "MGA",
                            "MKD",
                            "MMK",
                            "MNT",
                            "MOP",
                            "MRU",
                            "MUR",
                            "MVR",
                            "MWK",
                            "MXN",
                            "MYR",
                            "MZN",
                            "NAD",
                            "NGN",
                            "NIO",
                            "NOK",
                            "NPR",
                            "NZD",
                            "OMR",
                            "PAB",
                            "PEN",
                            "PGK",
                            "PHP",
                            "PKR",
                            "PLN",
                            "PYG",
                            "QAR",
                            "RON",
                            "RSD",
                            "RUB",
                            "RWF",
                            "SAR",
                            "SBD",
                            "SCR",
                            "SDG",
                            "SEK",
                            "SGD",
                            "SHP",
                            "SLE",
                            "SLL",
                            "SOS",
                            "SRD",
                            "SSP",
                            "STN",
                            "SVC",
                            "SYP",
                            "SZL",
                            "THB",
                            "TJS",
                            "TMT",
                            "TND",
                            "TOP",
                            "TRY",
                            "TTD",
                            "TVD",
                            "TWD",
                            "TZS",
                            "UAH",
                            "UGX",
                            "USD",
                            "UYU",
                            "UYW",
                            "UZS",
                            "VED",
                            "VES",
                            "VND",
                            "VUV",
                            "WST",
                            "XAF",
                            "XAG",
                            "XAU",
                            "XBA",
                            "XBB",
                            "XBC",
                            "XBD",
                            "XCD",
                            "XDR",
                            "XOF",
                            "XPD",
                            "XPF",
                            "XPT",
                            "XSU",
                            "XTS",
                            "XUA",
                            "XXX",
                            "YER",
                            "ZAR",
                            "ZMW",
                            "ZWL"
                          ],
                          "description": "Default currency for this customer."
                        },
                        "kycStatus": {
                          "type": "string",
                          "enum": [
                            "PENDING",
                            "REVIEWING",
                            "IN_PROGRESS",
                            "APPROVED",
                            "REJECTED",
                            "NOT_AVAILABLE"
                          ],
                          "description": "Identity verification (KYC) status. NOT_AVAILABLE for organisations (see kybStatus)."
                        },
                        "kybStatus": {
                          "type": "string",
                          "enum": [
                            "DRAFT",
                            "PENDING_REVIEW",
                            "APPROVED",
                            "REJECTED"
                          ],
                          "description": "Business verification (KYB) status. Present for organisations."
                        },
                        "createdAt": {
                          "type": "number",
                          "description": "Creation timestamp (epoch milliseconds)."
                        },
                        "updatedAt": {
                          "type": "number",
                          "description": "Last identity/verification update timestamp (epoch milliseconds)."
                        }
                      },
                      "required": [
                        "customerId",
                        "customerType",
                        "displayName",
                        "kycStatus",
                        "createdAt",
                        "updatedAt"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "404": {
            "description": "Customer not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/banking/customers/YOUR_CUSTOMERID\", {\n    method: \"PATCH\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"language\": \"en\",\n      \"defaultCurrency\": \"AED\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.patch(\n    \"https://api.virtuabroker.com/v1/banking/customers/YOUR_CUSTOMERID\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"language\": \"en\",\n        \"defaultCurrency\": \"AED\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X PATCH \"https://api.virtuabroker.com/v1/banking/customers/YOUR_CUSTOMERID\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"language\": \"en\",\n  \"defaultCurrency\": \"AED\"\n}'"
          }
        ]
      },
      "delete": {
        "summary": "Delete a customer",
        "description": "Soft-deletes a customer from your workspace. The customer stops appearing in listings; historical operations are preserved.",
        "tags": [
          "Customers"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 1,
              "description": "Customer identifier: the email for individuals (URL-encoded, case-insensitive), the UUID for organisations."
            },
            "required": true,
            "description": "Customer identifier: the email for individuals (URL-encoded, case-insensitive), the UUID for organisations.",
            "name": "customerId",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Customer deleted",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "nullable": true
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "404": {
            "description": "Customer not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/banking/customers/YOUR_CUSTOMERID\", {\n    method: \"DELETE\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.delete(\n    \"https://api.virtuabroker.com/v1/banking/customers/YOUR_CUSTOMERID\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X DELETE \"https://api.virtuabroker.com/v1/banking/customers/YOUR_CUSTOMERID\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/banking/customers/{customerId}/kyc": {
      "get": {
        "summary": "Get customer KYC status",
        "description": "Returns the current identity-verification (KYC) status of a customer. To run a verification, use the existing `/v1/kyc` session flow.",
        "tags": [
          "Customers"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 1,
              "description": "Customer identifier: the email for individuals (URL-encoded, case-insensitive), the UUID for organisations."
            },
            "required": true,
            "description": "Customer identifier: the email for individuals (URL-encoded, case-insensitive), the UUID for organisations.",
            "name": "customerId",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Customer KYC status",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "status": {
                          "type": "string",
                          "enum": [
                            "PENDING",
                            "REVIEWING",
                            "IN_PROGRESS",
                            "APPROVED",
                            "REJECTED",
                            "NOT_AVAILABLE"
                          ]
                        }
                      },
                      "required": [
                        "status"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "404": {
            "description": "Customer not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/banking/customers/YOUR_CUSTOMERID/kyc\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/banking/customers/YOUR_CUSTOMERID/kyc\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/banking/customers/YOUR_CUSTOMERID/kyc\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/payment-requests": {
      "post": {
        "summary": "Create a payment request",
        "description": "Creates a payment link on behalf of a managed customer (`accountId` = the payee who receives the funds). Returns the request id and the hosted checkout `url` the payer completes the payment on. `general` requests are payable by anyone with the link; `nominal` requests target one payer (`recipient`). The requested `currency` settles to the payee balance, so it must be holdable (see `GET /v1/currencies`).",
        "tags": [
          "PaymentRequests"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "general",
                      "nominal"
                    ],
                    "description": "`general` = payable by anyone with the link; `nominal` = targeted at one payer (requires `recipient`)."
                  },
                  "amount": {
                    "type": "number",
                    "minimum": 0,
                    "exclusiveMinimum": true,
                    "description": "Amount to request."
                  },
                  "currency": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Settlement currency (what the payee receives). Must be holdable as a balance — see GET /v1/currencies."
                  },
                  "accountId": {
                    "type": "string",
                    "minLength": 1,
                    "description": "The managed customer (payee) who receives the funds. Must belong to your workspace."
                  },
                  "recipient": {
                    "type": "object",
                    "properties": {
                      "accountId": {
                        "type": "string",
                        "minLength": 1
                      },
                      "contactEmail": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 254,
                        "format": "email",
                        "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                        "description": "Email address"
                      }
                    },
                    "additionalProperties": false,
                    "description": "The payer being asked to pay. Required for `nominal`, forbidden for `general`."
                  },
                  "lockedPaymentCurrency": {
                    "type": "string",
                    "minLength": 1,
                    "description": "Forces the payer to pay in exactly this currency."
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 500
                  },
                  "expiresAt": {
                    "type": "integer",
                    "minimum": 0,
                    "exclusiveMinimum": true,
                    "description": "Expiry timestamp (epoch milliseconds)."
                  }
                },
                "required": [
                  "type",
                  "amount",
                  "currency",
                  "accountId"
                ],
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Payment request created",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "paymentRequestId": {
                          "type": "string",
                          "minLength": 1
                        },
                        "url": {
                          "type": "string",
                          "minLength": 1,
                          "description": "Hosted checkout link the payer completes the payment on."
                        }
                      },
                      "required": [
                        "paymentRequestId",
                        "url"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation failure (payment requests not enabled, non-holdable currency, missing recipient, ...)",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "403": {
            "description": "The accountId does not belong to this workspace",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/payment-requests\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"type\": \"general\",\n      \"amount\": 0,\n      \"currency\": \"string\",\n      \"accountId\": \"string\",\n      \"recipient\": {\n        \"accountId\": \"string\",\n        \"contactEmail\": \"string\"\n      },\n      \"lockedPaymentCurrency\": \"string\",\n      \"description\": \"string\",\n      \"expiresAt\": 0\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api.virtuabroker.com/v1/payment-requests\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"type\": \"general\",\n        \"amount\": 0,\n        \"currency\": \"string\",\n        \"accountId\": \"string\",\n        \"recipient\": {\n            \"accountId\": \"string\",\n            \"contactEmail\": \"string\"\n        },\n        \"lockedPaymentCurrency\": \"string\",\n        \"description\": \"string\",\n        \"expiresAt\": 0\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api.virtuabroker.com/v1/payment-requests\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"type\": \"general\",\n  \"amount\": 0,\n  \"currency\": \"string\",\n  \"accountId\": \"string\",\n  \"recipient\": {\n    \"accountId\": \"string\",\n    \"contactEmail\": \"string\"\n  },\n  \"lockedPaymentCurrency\": \"string\",\n  \"description\": \"string\",\n  \"expiresAt\": 0\n}'"
          }
        ]
      },
      "get": {
        "summary": "List payment requests",
        "description": "Lists the payment requests of the authenticated workspace, optionally filtered by lifecycle `status`. Paginated via `page`/`limit`; use `GET /v1/payment-requests/count` for the total under the same filter.",
        "tags": [
          "PaymentRequests"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "enum": [
                "open",
                "processing",
                "paid",
                "expired",
                "cancelled",
                "rejected"
              ]
            },
            "required": false,
            "name": "status",
            "in": "query"
          },
          {
            "schema": {
              "type": "integer",
              "minimum": 1,
              "default": 1
            },
            "required": false,
            "name": "page",
            "in": "query"
          },
          {
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100,
              "default": 50
            },
            "required": false,
            "name": "limit",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "List of payment requests",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "paymentRequestId": {
                            "type": "string",
                            "minLength": 1
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "general",
                              "nominal"
                            ]
                          },
                          "status": {
                            "type": "string",
                            "enum": [
                              "open",
                              "processing",
                              "paid",
                              "expired",
                              "cancelled",
                              "rejected"
                            ]
                          },
                          "recipient": {
                            "type": "object",
                            "nullable": true,
                            "properties": {
                              "accountId": {
                                "type": "string",
                                "minLength": 1
                              },
                              "contactEmail": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 254,
                                "format": "email",
                                "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                                "description": "Email address"
                              }
                            },
                            "additionalProperties": false
                          },
                          "destinationLabel": {
                            "type": "string",
                            "nullable": true,
                            "description": "Display name of the payee requesting the funds."
                          },
                          "requestedAmount": {
                            "type": "number"
                          },
                          "requestedCurrency": {
                            "type": "string"
                          },
                          "lockedPaymentCurrency": {
                            "type": "string",
                            "nullable": true
                          },
                          "description": {
                            "type": "string",
                            "nullable": true
                          },
                          "notes": {
                            "type": "string",
                            "nullable": true
                          },
                          "orderId": {
                            "type": "string",
                            "nullable": true
                          },
                          "viewedAt": {
                            "type": "number",
                            "nullable": true,
                            "description": "First time the payer opened the pay page (epoch ms)."
                          },
                          "paymentStartedAt": {
                            "type": "number",
                            "nullable": true,
                            "description": "When the payer accepted and the order was created (epoch ms)."
                          },
                          "createdAt": {
                            "type": "number"
                          },
                          "updatedAt": {
                            "type": "number"
                          },
                          "expiresAt": {
                            "type": "number",
                            "nullable": true
                          },
                          "settlement": {
                            "type": "object",
                            "properties": {
                              "status": {
                                "type": "string",
                                "nullable": true,
                                "description": "Status of the linked payment order."
                              },
                              "originAmount": {
                                "type": "number",
                                "nullable": true
                              },
                              "originCurrency": {
                                "type": "string",
                                "nullable": true
                              }
                            },
                            "required": [
                              "status",
                              "originAmount",
                              "originCurrency"
                            ],
                            "additionalProperties": false
                          }
                        },
                        "required": [
                          "paymentRequestId",
                          "type",
                          "status",
                          "recipient",
                          "destinationLabel",
                          "requestedAmount",
                          "requestedCurrency",
                          "lockedPaymentCurrency",
                          "description",
                          "notes",
                          "orderId",
                          "viewedAt",
                          "paymentStartedAt",
                          "createdAt",
                          "updatedAt",
                          "expiresAt"
                        ],
                        "additionalProperties": false
                      }
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/payment-requests\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/payment-requests\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/payment-requests\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/payment-requests/count": {
      "get": {
        "summary": "Count payment requests",
        "description": "Returns the total number of payment requests in the authenticated workspace (same filter as the list endpoint).",
        "tags": [
          "PaymentRequests"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "enum": [
                "open",
                "processing",
                "paid",
                "expired",
                "cancelled",
                "rejected"
              ]
            },
            "required": false,
            "name": "status",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "Payment request count",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "count": {
                          "type": "integer"
                        }
                      },
                      "required": [
                        "count"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/payment-requests/count\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/payment-requests/count\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/payment-requests/count\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/payment-requests/{paymentRequestId}": {
      "get": {
        "summary": "Get payment request status",
        "description": "Returns the lifecycle status of a payment request (`open`, `processing`, `paid`, `expired`, `cancelled`, `rejected`). Once a payer accepts, the response also carries a `settlement` block with the linked order status and origin amount/currency. `status` flips to `paid` automatically when the linked order succeeds.",
        "tags": [
          "PaymentRequests"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 1
            },
            "required": true,
            "name": "paymentRequestId",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Payment request status",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "paymentRequestId": {
                          "type": "string",
                          "minLength": 1
                        },
                        "type": {
                          "type": "string",
                          "enum": [
                            "general",
                            "nominal"
                          ]
                        },
                        "status": {
                          "type": "string",
                          "enum": [
                            "open",
                            "processing",
                            "paid",
                            "expired",
                            "cancelled",
                            "rejected"
                          ]
                        },
                        "recipient": {
                          "type": "object",
                          "nullable": true,
                          "properties": {
                            "accountId": {
                              "type": "string",
                              "minLength": 1
                            },
                            "contactEmail": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 254,
                              "format": "email",
                              "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
                              "description": "Email address"
                            }
                          },
                          "additionalProperties": false
                        },
                        "destinationLabel": {
                          "type": "string",
                          "nullable": true,
                          "description": "Display name of the payee requesting the funds."
                        },
                        "requestedAmount": {
                          "type": "number"
                        },
                        "requestedCurrency": {
                          "type": "string"
                        },
                        "lockedPaymentCurrency": {
                          "type": "string",
                          "nullable": true
                        },
                        "description": {
                          "type": "string",
                          "nullable": true
                        },
                        "notes": {
                          "type": "string",
                          "nullable": true
                        },
                        "orderId": {
                          "type": "string",
                          "nullable": true
                        },
                        "viewedAt": {
                          "type": "number",
                          "nullable": true,
                          "description": "First time the payer opened the pay page (epoch ms)."
                        },
                        "paymentStartedAt": {
                          "type": "number",
                          "nullable": true,
                          "description": "When the payer accepted and the order was created (epoch ms)."
                        },
                        "createdAt": {
                          "type": "number"
                        },
                        "updatedAt": {
                          "type": "number"
                        },
                        "expiresAt": {
                          "type": "number",
                          "nullable": true
                        },
                        "settlement": {
                          "type": "object",
                          "properties": {
                            "status": {
                              "type": "string",
                              "nullable": true,
                              "description": "Status of the linked payment order."
                            },
                            "originAmount": {
                              "type": "number",
                              "nullable": true
                            },
                            "originCurrency": {
                              "type": "string",
                              "nullable": true
                            }
                          },
                          "required": [
                            "status",
                            "originAmount",
                            "originCurrency"
                          ],
                          "additionalProperties": false
                        }
                      },
                      "required": [
                        "paymentRequestId",
                        "type",
                        "status",
                        "recipient",
                        "destinationLabel",
                        "requestedAmount",
                        "requestedCurrency",
                        "lockedPaymentCurrency",
                        "description",
                        "notes",
                        "orderId",
                        "viewedAt",
                        "paymentStartedAt",
                        "createdAt",
                        "updatedAt",
                        "expiresAt"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "404": {
            "description": "Payment request not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/payment-requests/YOUR_PAYMENTREQUESTID\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/payment-requests/YOUR_PAYMENTREQUESTID\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/payment-requests/YOUR_PAYMENTREQUESTID\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/webhooks/resend": {
      "post": {
        "summary": "Resend a webhook for an order or deposit",
        "description": "Re-delivers the most recent webhook event for a completed order or deposit to your registered endpoints. Provide the `entityType` and its `entityId`; optionally set `webhookType` to override the event type. Only succeeds for entities in a terminal (completed) state.",
        "tags": [
          "Webhooks"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "entityType": {
                    "type": "string",
                    "enum": [
                      "order",
                      "deposit"
                    ],
                    "description": "Type of entity to resend the webhook for",
                    "example": "order"
                  },
                  "entityId": {
                    "type": "string",
                    "minLength": 1,
                    "description": "ID of the order or deposit",
                    "example": "ABC123DEF456"
                  },
                  "webhookType": {
                    "type": "string",
                    "enum": [
                      "verification_status_updated",
                      "order_status_updated",
                      "order_completed",
                      "deposit_completed",
                      "deposit_partially_completed",
                      "deposit_method_created",
                      "deposit_method_activated",
                      "trade_completed",
                      "trade_partially_completed",
                      "withdrawal_completed",
                      "withdrawal_partially_completed",
                      "offramp_completed",
                      "offramp_partially_completed",
                      "balance_updated",
                      "wallet_deposit_completed",
                      "openbanking_status_updated",
                      "compliance_case_pending_action",
                      "compliance_case_updated",
                      "conversation_created",
                      "conversation_updated",
                      "conversation_message_created",
                      "pending_payment_created_or_detected",
                      "pending_payment_updated",
                      "deposit_action_required"
                    ],
                    "description": "Override the webhook event type; defaults to the most recent type for the entity"
                  }
                },
                "required": [
                  "entityType",
                  "entityId"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Resend result — whether a webhook was sent",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "sent": {
                      "type": "boolean",
                      "description": "True if a webhook was re-delivered for the entity"
                    }
                  },
                  "required": [
                    "sent"
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Bad request (validation error)",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "404": {
            "description": "Order or deposit not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/webhooks/resend\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"entityType\": \"order\",\n      \"entityId\": \"ABC123DEF456\",\n      \"webhookType\": \"verification_status_updated\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api.virtuabroker.com/v1/webhooks/resend\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"entityType\": \"order\",\n        \"entityId\": \"ABC123DEF456\",\n        \"webhookType\": \"verification_status_updated\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api.virtuabroker.com/v1/webhooks/resend\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"entityType\": \"order\",\n  \"entityId\": \"ABC123DEF456\",\n  \"webhookType\": \"verification_status_updated\"\n}'"
          }
        ]
      }
    },
    "/v1/webhooks": {
      "post": {
        "summary": "Create a webhook endpoint",
        "description": "Registers a new HTTPS webhook endpoint for the authenticated workspace. Provide a `name`, an HTTPS `url`, and a `secret` used to sign deliveries (`X-VirtuaBroker-Signature-256`). The secret is never returned after creation.",
        "tags": [
          "Webhooks"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100,
                    "description": "Human-readable label for this endpoint, e.g. \"Production\"",
                    "example": "Production"
                  },
                  "url": {
                    "type": "string",
                    "format": "uri",
                    "description": "HTTPS URL that will receive webhook POST requests",
                    "example": "https://api.example.com/webhooks/virtuabroker"
                  },
                  "secret": {
                    "type": "string",
                    "minLength": 8,
                    "description": "Signing secret used to compute the X-VirtuaBroker-Signature-256 header. Store this securely — it is never returned after creation.",
                    "example": "whsec_my_very_secret_key"
                  }
                },
                "required": [
                  "name",
                  "url",
                  "secret"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Webhook endpoint created (secret omitted)",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string"
                    },
                    "name": {
                      "type": "string"
                    },
                    "url": {
                      "type": "string",
                      "format": "uri"
                    },
                    "isActive": {
                      "type": "boolean"
                    },
                    "createdAt": {
                      "type": "number"
                    },
                    "updatedAt": {
                      "type": "number"
                    }
                  },
                  "required": [
                    "id",
                    "name",
                    "url",
                    "isActive",
                    "createdAt",
                    "updatedAt"
                  ],
                  "description": "Webhook endpoint — secret is never included in responses",
                  "example": {
                    "id": "abc123def456",
                    "name": "Production",
                    "url": "https://api.example.com/webhooks/virtuabroker",
                    "isActive": true,
                    "createdAt": 1704067200000,
                    "updatedAt": 1704067200000
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request (validation error or non-HTTPS URL)",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/webhooks\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"name\": \"Production\",\n      \"url\": \"https://api.example.com/webhooks/virtuabroker\",\n      \"secret\": \"whsec_my_very_secret_key\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api.virtuabroker.com/v1/webhooks\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"name\": \"Production\",\n        \"url\": \"https://api.example.com/webhooks/virtuabroker\",\n        \"secret\": \"whsec_my_very_secret_key\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api.virtuabroker.com/v1/webhooks\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"name\": \"Production\",\n  \"url\": \"https://api.example.com/webhooks/virtuabroker\",\n  \"secret\": \"whsec_my_very_secret_key\"\n}'"
          }
        ]
      },
      "get": {
        "summary": "List webhook endpoints",
        "description": "Returns all webhook endpoints registered for the authenticated workspace. Secrets are never included.",
        "tags": [
          "Webhooks"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "responses": {
          "200": {
            "description": "List of webhook endpoints",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "id": {
                        "type": "string"
                      },
                      "name": {
                        "type": "string"
                      },
                      "url": {
                        "type": "string",
                        "format": "uri"
                      },
                      "isActive": {
                        "type": "boolean"
                      },
                      "createdAt": {
                        "type": "number"
                      },
                      "updatedAt": {
                        "type": "number"
                      }
                    },
                    "required": [
                      "id",
                      "name",
                      "url",
                      "isActive",
                      "createdAt",
                      "updatedAt"
                    ],
                    "description": "Webhook endpoint — secret is never included in responses",
                    "example": {
                      "id": "abc123def456",
                      "name": "Production",
                      "url": "https://api.example.com/webhooks/virtuabroker",
                      "isActive": true,
                      "createdAt": 1704067200000,
                      "updatedAt": 1704067200000
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/webhooks\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/webhooks\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/webhooks\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/webhooks/{id}": {
      "get": {
        "summary": "Get a webhook endpoint",
        "description": "Returns a single webhook endpoint by its id. Secrets are never included.",
        "tags": [
          "Webhooks"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 1
            },
            "required": true,
            "name": "id",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Webhook endpoint details (secret omitted)",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string"
                    },
                    "name": {
                      "type": "string"
                    },
                    "url": {
                      "type": "string",
                      "format": "uri"
                    },
                    "isActive": {
                      "type": "boolean"
                    },
                    "createdAt": {
                      "type": "number"
                    },
                    "updatedAt": {
                      "type": "number"
                    }
                  },
                  "required": [
                    "id",
                    "name",
                    "url",
                    "isActive",
                    "createdAt",
                    "updatedAt"
                  ],
                  "description": "Webhook endpoint — secret is never included in responses",
                  "example": {
                    "id": "abc123def456",
                    "name": "Production",
                    "url": "https://api.example.com/webhooks/virtuabroker",
                    "isActive": true,
                    "createdAt": 1704067200000,
                    "updatedAt": 1704067200000
                  }
                }
              }
            }
          },
          "404": {
            "description": "Webhook endpoint not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/webhooks/wh_ep_1a2b3c\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/webhooks/wh_ep_1a2b3c\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/webhooks/wh_ep_1a2b3c\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      },
      "put": {
        "summary": "Update a webhook endpoint",
        "description": "Updates a webhook endpoint by its id. Provide any subset of `name`, `url` (HTTPS), `secret`, and `isActive`; at least one field is required.",
        "tags": [
          "Webhooks"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 1
            },
            "required": true,
            "name": "id",
            "in": "path"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 100
                  },
                  "url": {
                    "type": "string",
                    "format": "uri"
                  },
                  "secret": {
                    "type": "string",
                    "minLength": 8
                  },
                  "isActive": {
                    "type": "boolean"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Updated webhook endpoint (secret omitted)",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string"
                    },
                    "name": {
                      "type": "string"
                    },
                    "url": {
                      "type": "string",
                      "format": "uri"
                    },
                    "isActive": {
                      "type": "boolean"
                    },
                    "createdAt": {
                      "type": "number"
                    },
                    "updatedAt": {
                      "type": "number"
                    }
                  },
                  "required": [
                    "id",
                    "name",
                    "url",
                    "isActive",
                    "createdAt",
                    "updatedAt"
                  ],
                  "description": "Webhook endpoint — secret is never included in responses",
                  "example": {
                    "id": "abc123def456",
                    "name": "Production",
                    "url": "https://api.example.com/webhooks/virtuabroker",
                    "isActive": true,
                    "createdAt": 1704067200000,
                    "updatedAt": 1704067200000
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request (validation error or non-HTTPS URL)",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "404": {
            "description": "Webhook endpoint not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/webhooks/wh_ep_1a2b3c\", {\n    method: \"PUT\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"name\": \"string\",\n      \"url\": \"string\",\n      \"secret\": \"string\",\n      \"isActive\": true\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.put(\n    \"https://api.virtuabroker.com/v1/webhooks/wh_ep_1a2b3c\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"name\": \"string\",\n        \"url\": \"string\",\n        \"secret\": \"string\",\n        \"isActive\": True\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X PUT \"https://api.virtuabroker.com/v1/webhooks/wh_ep_1a2b3c\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"name\": \"string\",\n  \"url\": \"string\",\n  \"secret\": \"string\",\n  \"isActive\": true\n}'"
          }
        ]
      },
      "delete": {
        "summary": "Delete a webhook endpoint",
        "description": "Deletes a webhook endpoint by its id.",
        "tags": [
          "Webhooks"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 1
            },
            "required": true,
            "name": "id",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Webhook endpoint deleted",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Whether the endpoint was deleted successfully"
                    }
                  },
                  "required": [
                    "success"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Webhook endpoint not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/webhooks/wh_ep_1a2b3c\", {\n    method: \"DELETE\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.delete(\n    \"https://api.virtuabroker.com/v1/webhooks/wh_ep_1a2b3c\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X DELETE \"https://api.virtuabroker.com/v1/webhooks/wh_ep_1a2b3c\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/orders/count": {
      "get": {
        "summary": "Count orders",
        "description": "Returns the number of orders in your workspace matching the same filters accepted by GET /v1/orders. A count that cannot be executed returns an error rather than 0 — a zero always means \"no matching orders\", never a failure.",
        "tags": [
          "Orders"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "description": "Optional currency code to filter the items",
              "example": "EUR"
            },
            "required": false,
            "description": "Optional currency code to filter the items",
            "name": "currency",
            "in": "query"
          },
          {
            "schema": {
              "type": "number",
              "minimum": 0
            },
            "required": false,
            "name": "minAmount",
            "in": "query"
          },
          {
            "schema": {
              "type": "number",
              "minimum": 0
            },
            "required": false,
            "name": "maxAmount",
            "in": "query"
          },
          {
            "schema": {
              "type": "integer",
              "minimum": 0
            },
            "required": false,
            "name": "from",
            "in": "query"
          },
          {
            "schema": {
              "type": "integer",
              "minimum": 0
            },
            "required": false,
            "name": "to",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
              "description": "Email of the user making the request. For a business payer this matches operations under any of its identities — the representative email and the organisation account — so listings stay complete across both.",
              "example": "user@example.com"
            },
            "required": false,
            "description": "Email of the user making the request. For a business payer this matches operations under any of its identities — the representative email and the organisation account — so listings stay complete across both.",
            "name": "userEmail",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "description": "General search (e.g. email or text). When provided, backend may use it for userEmail or text search."
            },
            "required": false,
            "description": "General search (e.g. email or text). When provided, backend may use it for userEmail or text search.",
            "name": "search",
            "in": "query"
          },
          {
            "schema": {
              "type": "number",
              "minimum": 0
            },
            "required": false,
            "name": "limit",
            "in": "query"
          },
          {
            "schema": {
              "type": "number",
              "minimum": 0
            },
            "required": false,
            "name": "page",
            "in": "query"
          },
          {
            "schema": {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "Pending",
                    "Processing",
                    "Success",
                    "Failed",
                    "Canceled",
                    "Reviewing"
                  ],
                  "description": "Common status values that are shared across all operation types",
                  "examples": [
                    "Pending",
                    "Processing",
                    "Success",
                    "Failed",
                    "Canceled",
                    "Reviewing"
                  ]
                },
                {
                  "type": "string",
                  "enum": [
                    "Received",
                    "Exchanging",
                    "Exchanged",
                    "WithdrawProcessing",
                    "Withdrawn",
                    "OffRampProcessing",
                    "OffRamped",
                    "Deleted",
                    "PendingCancel",
                    "Closed",
                    "WaitingForFundsToExchange",
                    "WaitingForFundsToSend",
                    "WaitingForFundsToOffRamp",
                    "OffRampDocPending",
                    "OnRampDocPending",
                    "WaitingForConfirmations",
                    "PriceChanged",
                    "Refunded",
                    "PreparedToOffRamp",
                    "WithdrawOfframpProcessing",
                    "WaitingForFundsToSendOfframp",
                    "WaitingForPayoutSettlement",
                    "WithdrawPending",
                    "WithdrawPendingOfframp"
                  ]
                },
                {
                  "type": "array",
                  "items": {
                    "anyOf": [
                      {
                        "type": "string",
                        "enum": [
                          "Pending",
                          "Processing",
                          "Success",
                          "Failed",
                          "Canceled",
                          "Reviewing"
                        ],
                        "description": "Common status values that are shared across all operation types",
                        "examples": [
                          "Pending",
                          "Processing",
                          "Success",
                          "Failed",
                          "Canceled",
                          "Reviewing"
                        ]
                      },
                      {
                        "type": "string",
                        "enum": [
                          "Received",
                          "Exchanging",
                          "Exchanged",
                          "WithdrawProcessing",
                          "Withdrawn",
                          "OffRampProcessing",
                          "OffRamped",
                          "Deleted",
                          "PendingCancel",
                          "Closed",
                          "WaitingForFundsToExchange",
                          "WaitingForFundsToSend",
                          "WaitingForFundsToOffRamp",
                          "OffRampDocPending",
                          "OnRampDocPending",
                          "WaitingForConfirmations",
                          "PriceChanged",
                          "Refunded",
                          "PreparedToOffRamp",
                          "WithdrawOfframpProcessing",
                          "WaitingForFundsToSendOfframp",
                          "WaitingForPayoutSettlement",
                          "WithdrawPending",
                          "WithdrawPendingOfframp"
                        ]
                      }
                    ],
                    "description": "Status vocabulary accepted by the order-list status filter",
                    "examples": [
                      "Pending",
                      "Success",
                      "Failed",
                      "Received",
                      "Exchanging",
                      "Withdrawn"
                    ]
                  }
                }
              ],
              "description": "Optional status filter — a single status or an array of statuses. Use the statuses the API returns (Pending, Processing, Reviewing, Success, Failed, Canceled); the granular internal states are still accepted for backward compatibility.",
              "examples": [
                "Pending",
                [
                  "Pending",
                  "Success"
                ],
                [
                  "Pending",
                  "Processing",
                  "Success"
                ],
                [
                  "Success",
                  "Failed",
                  "Canceled"
                ]
              ]
            },
            "required": false,
            "description": "Optional status filter — a single status or an array of statuses. Use the statuses the API returns (Pending, Processing, Reviewing, Success, Failed, Canceled); the granular internal states are still accepted for backward compatibility.",
            "name": "status",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "Order count",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "count": {
                      "type": "number",
                      "description": "Number of matching orders"
                    }
                  },
                  "required": [
                    "count"
                  ]
                }
              }
            }
          },
          "400": {
            "description": "The request could not be scoped or validated",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/orders/count\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/orders/count\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/orders/count\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/deposits/count": {
      "get": {
        "summary": "Count deposits",
        "description": "Returns the number of deposits matching the same filters accepted by GET /v1/deposits.",
        "tags": [
          "Deposits"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "EUR",
                    "USD",
                    "GBP",
                    "BRL",
                    "MXN",
                    "ARS",
                    "COP",
                    "PEN",
                    "NGN",
                    "KES",
                    "TZS",
                    "UGX",
                    "RWF",
                    "MWK",
                    "ZMW",
                    "XOF",
                    "XAF",
                    "BWP"
                  ]
                },
                {
                  "type": "string",
                  "enum": [
                    "USDC",
                    "USDT",
                    "CUSD",
                    "BTC",
                    "ETH",
                    "POL",
                    "SOL",
                    "TRX",
                    "AVAX",
                    "XRP",
                    "BNB"
                  ]
                }
              ],
              "description": "Optional currency code to filter the deposits",
              "examples": [
                "EUR"
              ]
            },
            "required": false,
            "description": "Optional currency code to filter the deposits",
            "name": "currency",
            "in": "query"
          },
          {
            "schema": {
              "type": "number",
              "minimum": 0
            },
            "required": false,
            "name": "minAmount",
            "in": "query"
          },
          {
            "schema": {
              "type": "number",
              "minimum": 0
            },
            "required": false,
            "name": "maxAmount",
            "in": "query"
          },
          {
            "schema": {
              "type": "integer",
              "minimum": 0
            },
            "required": false,
            "name": "from",
            "in": "query"
          },
          {
            "schema": {
              "type": "integer",
              "minimum": 0
            },
            "required": false,
            "name": "to",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$",
              "description": "Email of the user making the request. For a business payer this matches operations under any of its identities — the representative email and the organisation account — so listings stay complete across both.",
              "example": "user@example.com"
            },
            "required": false,
            "description": "Email of the user making the request. For a business payer this matches operations under any of its identities — the representative email and the organisation account — so listings stay complete across both.",
            "name": "userEmail",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "description": "General search (e.g. email or text). When provided, backend may use it for userEmail or text search."
            },
            "required": false,
            "description": "General search (e.g. email or text). When provided, backend may use it for userEmail or text search.",
            "name": "search",
            "in": "query"
          },
          {
            "schema": {
              "type": "integer",
              "minimum": 1,
              "description": "Deposits per page. Defaults to 10. A full page means there may be more — use `page` to continue, or GET /v1/deposits/count for the total. Large pages are accepted; very large ones are bounded by the search backend and will report an error rather than silently returning fewer rows.",
              "example": 50
            },
            "required": false,
            "description": "Deposits per page. Defaults to 10. A full page means there may be more — use `page` to continue, or GET /v1/deposits/count for the total. Large pages are accepted; very large ones are bounded by the search backend and will report an error rather than silently returning fewer rows.",
            "name": "limit",
            "in": "query"
          },
          {
            "schema": {
              "type": "integer",
              "minimum": 1,
              "description": "1-based page number. Defaults to 1.",
              "example": 1
            },
            "required": false,
            "description": "1-based page number. Defaults to 1.",
            "name": "page",
            "in": "query"
          },
          {
            "schema": {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "Pending",
                    "Processing",
                    "Success",
                    "Failed",
                    "Canceled",
                    "Reviewing"
                  ],
                  "description": "Common status values that are shared across all operation types",
                  "examples": [
                    "Pending",
                    "Processing",
                    "Success",
                    "Failed",
                    "Canceled",
                    "Reviewing"
                  ]
                },
                {
                  "type": "string",
                  "enum": [
                    "PendingCancel",
                    "Received"
                  ]
                },
                {
                  "type": "array",
                  "items": {
                    "anyOf": [
                      {
                        "type": "string",
                        "enum": [
                          "Pending",
                          "Processing",
                          "Success",
                          "Failed",
                          "Canceled",
                          "Reviewing"
                        ],
                        "description": "Common status values that are shared across all operation types",
                        "examples": [
                          "Pending",
                          "Processing",
                          "Success",
                          "Failed",
                          "Canceled",
                          "Reviewing"
                        ]
                      },
                      {
                        "type": "string",
                        "enum": [
                          "PendingCancel",
                          "Received"
                        ]
                      }
                    ],
                    "description": "Status for deposit operations",
                    "examples": [
                      "Pending",
                      "Success",
                      "Failed",
                      "Received",
                      "PendingCancel"
                    ]
                  }
                }
              ],
              "description": "Optional status to filter deposits. Can be a single status or an array of statuses for multiple filtering",
              "examples": [
                "Pending",
                [
                  "Pending",
                  "Success"
                ],
                [
                  "Pending",
                  "Processing",
                  "Success"
                ]
              ]
            },
            "required": false,
            "description": "Optional status to filter deposits. Can be a single status or an array of statuses for multiple filtering",
            "name": "status",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "Deposit count",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "count": {
                      "type": "number",
                      "description": "Number of matching deposits"
                    }
                  },
                  "required": [
                    "count"
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/deposits/count\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/deposits/count\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/deposits/count\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/deposits/{depositId}/methods": {
      "get": {
        "summary": "List deposit instructions for a deposit",
        "description": "Returns the pay-in instructions (deposit methods) for a specific deposit or order id. Use this to fetch the account/wallet details the payer must send funds to.",
        "tags": [
          "Deposits"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 12,
              "maxLength": 12,
              "pattern": "^[A-Z0-9]{12}$",
              "description": "ID of the deposit",
              "examples": [
                "01CLFXMT67II",
                "2R7E5Y5KFXP8",
                "4FWWRE3Y2URM"
              ]
            },
            "required": true,
            "description": "ID of the deposit",
            "name": "depositId",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Deposit instructions",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "methods": {
                      "type": "array",
                      "items": {
                        "oneOf": [
                          {
                            "type": "object",
                            "properties": {
                              "accountHolder": {
                                "type": "string",
                                "description": "Name of the account holder",
                                "example": "John Doe"
                              },
                              "iban": {
                                "type": "string",
                                "description": "SEPA Bank Account Number",
                                "example": "DE8937XXXXXXXXXXXX3000"
                              },
                              "bic": {
                                "type": "string",
                                "description": "Bank BIC/SWIFT code",
                                "example": "DEUTDEFF"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Name of the bank",
                                "example": "Deutsche Bank"
                              },
                              "bankAddress": {
                                "type": "string",
                                "description": "Address of the bank",
                                "example": "Taunusanlage 12"
                              },
                              "bankCity": {
                                "type": "string",
                                "description": "City of the bank",
                                "example": "Frankfurt am Main"
                              },
                              "bankZipcode": {
                                "type": "string",
                                "description": "Zipcode of the bank",
                                "example": "60325"
                              },
                              "bankCountry": {
                                "type": "string",
                                "enum": [
                                  "US",
                                  "CA",
                                  "GB",
                                  "DE",
                                  "FR",
                                  "AU",
                                  "JP",
                                  "KR",
                                  "SE",
                                  "NO",
                                  "DK",
                                  "FI",
                                  "NL",
                                  "BE",
                                  "CH",
                                  "AT",
                                  "NZ",
                                  "SG",
                                  "IE",
                                  "LU",
                                  "PT",
                                  "ES",
                                  "IT",
                                  "GR",
                                  "CZ",
                                  "PL",
                                  "HU",
                                  "SK",
                                  "SI",
                                  "EE",
                                  "LT",
                                  "LV",
                                  "IS",
                                  "MT",
                                  "CY",
                                  "HR",
                                  "RO",
                                  "BG",
                                  "BR",
                                  "AR",
                                  "CL",
                                  "MX",
                                  "CO",
                                  "PE",
                                  "PA",
                                  "UY",
                                  "BO",
                                  "ZA",
                                  "NG",
                                  "KE",
                                  "GH",
                                  "TZ",
                                  "UG",
                                  "RW",
                                  "MW",
                                  "ZM",
                                  "BW",
                                  "CD",
                                  "CI",
                                  "CM",
                                  "IL",
                                  "AE",
                                  "QA",
                                  "SA",
                                  "OM",
                                  "KW",
                                  "BH",
                                  "MY",
                                  "PH",
                                  "TH",
                                  "VN",
                                  "ID",
                                  "IN",
                                  "LK",
                                  "NP",
                                  "BD",
                                  "PK",
                                  "EG",
                                  "MA",
                                  "DZ",
                                  "TN",
                                  "JO",
                                  "LB",
                                  "TR",
                                  "KH",
                                  "MM",
                                  "LA",
                                  "EN",
                                  "BT",
                                  "VE",
                                  "TW",
                                  "HK",
                                  "CN"
                                ],
                                "description": "Country of the bank",
                                "example": "DE"
                              },
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "SEPA"
                                ]
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount. It can be 0 for open-amount bank transfers where the sender chooses the final amount from their bank.",
                                "example": 1000
                              },
                              "referenceCode": {
                                "type": "string",
                                "minLength": 1,
                                "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order. The user must include this code when making the deposit to ensure accurate processing. In cases where the reference code is incorrect or missing, we manually match orders based on the sender's name and other available details. In case the deposit is not matched, we will mark the order as Reviewing and the system will require manual attention.",
                                "example": "REF123456"
                              },
                              "extraDepositMethods": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "methodType": {
                                      "type": "string",
                                      "enum": [
                                        "HOSTED_CHECKOUT"
                                      ],
                                      "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                                    },
                                    "url": {
                                      "type": "string",
                                      "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                                      "example": "https://checkout.example.com/pay/abc123"
                                    },
                                    "callbackUrl": {
                                      "type": "string",
                                      "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Payment reference for this method (equals the deposit/order reference)"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                                    },
                                    "currency": {
                                      "type": "string",
                                      "description": "Currency of this method"
                                    },
                                    "expiresAt": {
                                      "type": "number",
                                      "description": "Unix ms after which `url` is no longer valid, when known"
                                    }
                                  },
                                  "required": [
                                    "methodType",
                                    "url"
                                  ],
                                  "description": "An additional, optional way to pay this deposit"
                                },
                                "description": "Additional, optional ways to pay this same deposit (e.g. a hosted card page). The bank details above remain the primary method; ignore this field if you only support bank transfer."
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ],
                            "description": "Detailed information about a bank deposit, including the amount and a unique reference code for identification."
                          },
                          {
                            "type": "object",
                            "properties": {
                              "address": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Crypto wallet address",
                                "example": "0x1A2b3C4d5E6f7890AbCdEf1234567890AbCdEf12"
                              },
                              "network": {
                                "type": "string",
                                "enum": [
                                  "MATIC",
                                  "ETH",
                                  "CELO",
                                  "TRON",
                                  "BTC",
                                  "SOLANA",
                                  "XRP",
                                  "CARDANO",
                                  "BSC",
                                  "ARBITRUM",
                                  "OPTIMISM",
                                  "AVALANCHE",
                                  "BASE"
                                ],
                                "description": "Network for the deposit for crypto deposits",
                                "examples": [
                                  "ETH",
                                  "MATIC",
                                  "CELO"
                                ]
                              },
                              "memo": {
                                "type": "string",
                                "description": "Optional memo for the transaction",
                                "example": "Payment for services"
                              },
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "CRYPTO"
                                ]
                              },
                              "qrCode": {
                                "type": "string",
                                "description": "Base64-encoded QR image for the deposit address",
                                "example": "iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAIAAADTED8xAAABpklEQVR42u3BAQ0AAADCoPdPbQ8HFAAAAAAAAAAAAAAAAAA..."
                              },
                              "qrCodeUrl": {
                                "type": "string",
                                "format": "uri",
                                "description": "7-day signed GCS URL of the QR code PNG"
                              },
                              "qrCodeExpiresAt": {
                                "type": "number",
                                "description": "Unix timestamp (ms) when qrCodeUrl expires"
                              },
                              "receivingAddress": {
                                "type": "string",
                                "description": "The wallet address where funds should be sent",
                                "example": "0xAbCdEf0123456789AbCdEf0123456789AbCdEf01"
                              },
                              "tokenContract": {
                                "type": "string",
                                "description": "The ERC20 token contract address",
                                "example": "0x765DE816845861e75A25fCA122bb6898B8B1282a"
                              },
                              "decimals": {
                                "type": "number",
                                "description": "Token decimals (default 18)",
                                "example": 18
                              }
                            },
                            "required": [
                              "address",
                              "network",
                              "depositType"
                            ],
                            "description": "Crypto Deposit Information"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "base64QRCode": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Base64 encoded QR code",
                                "example": "base64QRCode"
                              },
                              "qrCodeString": {
                                "type": "string",
                                "minLength": 1,
                                "description": "The Pix copy-and-paste code (BR Code payload) the payer pastes into their bank app. Pass it through unchanged — it carries its own checksum.",
                                "example": "qrCodeString"
                              },
                              "referenceCode": {
                                "type": "string",
                                "minLength": 1,
                                "description": "A unique identifier for the deposit, crucial for matching the deposit with the corresponding order",
                                "example": "REF123456"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "exclusiveMinimum": true,
                                "description": "The monetary value to be deposited into the bank. This amount should be positive and accurately reflect the intended deposit.",
                                "example": 1000
                              },
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "PIX"
                                ]
                              }
                            },
                            "required": [
                              "base64QRCode",
                              "qrCodeString",
                              "referenceCode",
                              "amount",
                              "depositType"
                            ],
                            "description": "Pix Deposit Information"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "CREDIT_CARD"
                                ]
                              }
                            },
                            "required": [
                              "depositType"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "bankName": {
                                "type": "string",
                                "description": "Name of the bank (present when the rail provides it)"
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Name of the account holder (present when the rail provides it)"
                              },
                              "clabe": {
                                "type": "string",
                                "description": "CLABE number"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Bank account number (e.g. from the BANK_TRANSFER payment method)"
                              },
                              "reference": {
                                "type": "string",
                                "description": "Payment reference (e.g. from the BANK_TRANSFER payment method)"
                              },
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "CLABE"
                                ],
                                "description": "Type of the deposit"
                              }
                            },
                            "required": [
                              "clabe",
                              "depositType"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "url": {
                                "type": "string",
                                "description": "URL of the PSE payment"
                              },
                              "amountPrefilled": {
                                "type": "boolean",
                                "description": "Whether the payment page already carries the amount. When false or absent, the payer must enter it."
                              },
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "PSE"
                                ],
                                "description": "Type of the deposit"
                              }
                            },
                            "required": [
                              "url",
                              "depositType"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BALANCE"
                                ]
                              }
                            },
                            "required": [
                              "depositType"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "PENDING"
                                ]
                              },
                              "currency": {
                                "type": "string",
                                "description": "Currency of the deposit"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the order/deposit"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount. It can be 0 while bank transfer details are open-amount or still being provisioned."
                              },
                              "extraDepositMethods": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "methodType": {
                                      "type": "string",
                                      "enum": [
                                        "HOSTED_CHECKOUT"
                                      ],
                                      "description": "HOSTED_CHECKOUT: a hosted payment page to send the payer to (card). More types may be added — treat an unknown value as unsupported and fall back to the bank details in `depositInfo`."
                                    },
                                    "url": {
                                      "type": "string",
                                      "description": "URL to send the payer to. For HOSTED_CHECKOUT, redirect the payer here (or embed it) to pay by card.",
                                      "example": "https://checkout.example.com/pay/abc123"
                                    },
                                    "callbackUrl": {
                                      "type": "string",
                                      "description": "Where the payer’s BROWSER is returned after paying. Informational only: it is not a server-to-server notification, and a payer landing there is NOT proof of payment — rely on the deposit status or webhooks for that."
                                    },
                                    "referenceCode": {
                                      "type": "string",
                                      "description": "Payment reference for this method (equals the deposit/order reference)"
                                    },
                                    "amount": {
                                      "type": "number",
                                      "description": "Amount payable via this method when it differs from the deposit amount (e.g. a method-specific surcharge)"
                                    },
                                    "currency": {
                                      "type": "string",
                                      "description": "Currency of this method"
                                    },
                                    "expiresAt": {
                                      "type": "number",
                                      "description": "Unix ms after which `url` is no longer valid, when known"
                                    }
                                  },
                                  "required": [
                                    "methodType",
                                    "url"
                                  ],
                                  "description": "An additional, optional way to pay this deposit"
                                },
                                "description": "Additional ways to pay while the bank details are being provisioned (e.g. a hosted card page). Optional — ignore it and wait for the bank details if you only support bank transfer."
                              },
                              "pendingReason": {
                                "type": "string",
                                "enum": [
                                  "collection_account_activating",
                                  "accountless_per_account_corridor"
                                ],
                                "description": "Why the instructions are still being provisioned, when the reason is known. `collection_account_activating` means the collection account for this payer is being activated and payable details are expected shortly. `accountless_per_account_corridor` means this corridor collects only into a collection account dedicated to the paying account, this request names no account, and none can be created for it — so payable details will NOT arrive by waiting; create the deposit against an account instead. Absence never conveys timing on either surface: here it means only that no reason is classifiable, and an account-level deposit-method instruction never carries the field at all. Treat the values as an open set and ignore any you do not recognise."
                              }
                            },
                            "required": [
                              "depositType",
                              "currency",
                              "referenceCode",
                              "amount"
                            ],
                            "description": "Deposit details are being provisioned; poll the order/deposit or wait for webhook"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "IMPS"
                                ]
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Name of the bank"
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Name of the account holder"
                              },
                              "ifsc": {
                                "type": "string",
                                "description": "ifsc number"
                              },
                              "type": {
                                "type": "string",
                                "description": "Type of the deposit"
                              },
                              "branch": {
                                "type": "string",
                                "description": "Branch of the bank"
                              },
                              "bank": {
                                "type": "string",
                                "description": "Bank of the account"
                              },
                              "otp": {
                                "type": "string",
                                "description": "OTP of the deposit"
                              },
                              "bankNotes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "number",
                                      "description": "Type of note: -1 for warning, 1 for info"
                                    },
                                    "msg": {
                                      "type": "string",
                                      "description": "Message content"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "msg"
                                  ]
                                },
                                "description": "Additional bank instructions"
                              }
                            },
                            "required": [
                              "depositType",
                              "accountNumber",
                              "bankName",
                              "accountHolder",
                              "ifsc",
                              "type",
                              "branch",
                              "bank",
                              "otp"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "UPI"
                                ]
                              },
                              "vpa": {
                                "type": "string",
                                "description": "Virtual Payment Address"
                              },
                              "name": {
                                "type": "string",
                                "description": "Name of the account holder"
                              },
                              "otp": {
                                "type": "string",
                                "description": "OTP for the transaction"
                              },
                              "paymentLink": {
                                "type": "string",
                                "description": "Payment link"
                              },
                              "upiNotes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "number",
                                      "description": "Type of note: -1 for warning, 1 for info"
                                    },
                                    "msg": {
                                      "type": "string",
                                      "description": "Message content"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "msg"
                                  ]
                                },
                                "description": "Additional UPI instructions"
                              }
                            },
                            "required": [
                              "depositType",
                              "vpa",
                              "name",
                              "otp",
                              "paymentLink"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "AED_BANK_TRANSFER"
                                ]
                              },
                              "iban": {
                                "type": "string",
                                "description": "International Bank Account Number"
                              },
                              "name": {
                                "type": "string",
                                "description": "Name of the account holder"
                              },
                              "bank": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "type": {
                                "type": "string",
                                "description": "Account type"
                              },
                              "address": {
                                "type": "string",
                                "description": "Bank address"
                              },
                              "email": {
                                "type": "string",
                                "description": "Contact email"
                              },
                              "phoneNumber": {
                                "type": "string",
                                "description": "Contact phone number"
                              },
                              "transferCode": {
                                "type": "string",
                                "description": "Transfer code"
                              },
                              "poBox": {
                                "type": "string",
                                "description": "P.O. Box"
                              },
                              "otp": {
                                "type": "string",
                                "description": "OTP for the transaction"
                              },
                              "bankNotes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "number",
                                      "description": "Type of note: -1 for warning, 1 for info"
                                    },
                                    "msg": {
                                      "type": "string",
                                      "description": "Message content"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "msg"
                                  ]
                                },
                                "description": "Additional bank instructions"
                              }
                            },
                            "required": [
                              "depositType",
                              "iban",
                              "name",
                              "bank",
                              "type",
                              "address",
                              "email",
                              "phoneNumber",
                              "transferCode",
                              "poBox",
                              "otp"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "SPEI"
                                ]
                              },
                              "clabe": {
                                "type": "string",
                                "description": "CLABE number"
                              },
                              "name": {
                                "type": "string",
                                "description": "Name of the account holder"
                              },
                              "bank": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankNotes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "number",
                                      "description": "Type of note: -1 for warning, 1 for info"
                                    },
                                    "msg": {
                                      "type": "string",
                                      "description": "Message content"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "msg"
                                  ]
                                },
                                "description": "Additional bank instructions"
                              }
                            },
                            "required": [
                              "depositType",
                              "clabe",
                              "name",
                              "bank"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "TRY_BANK_TRANSFER"
                                ]
                              },
                              "iban": {
                                "type": "string",
                                "description": "International Bank Account Number"
                              },
                              "name": {
                                "type": "string",
                                "description": "Name of the account holder"
                              },
                              "bank": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "otp": {
                                "type": "string",
                                "description": "OTP for the transaction"
                              },
                              "bankNotes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "number",
                                      "description": "Type of note: -1 for warning, 1 for info"
                                    },
                                    "msg": {
                                      "type": "string",
                                      "description": "Message content"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "msg"
                                  ]
                                },
                                "description": "Additional bank instructions"
                              }
                            },
                            "required": [
                              "depositType",
                              "iban",
                              "name",
                              "bank",
                              "otp"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "IDR_BANK_TRANSFER"
                                ]
                              },
                              "virtualAccount": {
                                "type": "string",
                                "description": "Virtual account number"
                              },
                              "name": {
                                "type": "string",
                                "description": "Name of the account holder"
                              },
                              "bank": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankNotes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "number",
                                      "description": "Type of note: -1 for warning, 1 for info"
                                    },
                                    "msg": {
                                      "type": "string",
                                      "description": "Message content"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "msg"
                                  ]
                                },
                                "description": "Additional bank instructions"
                              }
                            },
                            "required": [
                              "depositType",
                              "virtualAccount",
                              "name",
                              "bank"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "THAI_QR"
                                ]
                              },
                              "qrCode": {
                                "type": "string",
                                "description": "QR code"
                              },
                              "otp": {
                                "type": "string",
                                "description": "OTP for the transaction"
                              },
                              "bankNotes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "number",
                                      "description": "Type of note: -1 for warning, 1 for info"
                                    },
                                    "msg": {
                                      "type": "string",
                                      "description": "Message content"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "msg"
                                  ]
                                },
                                "description": "Additional bank instructions"
                              }
                            },
                            "required": [
                              "depositType",
                              "qrCode",
                              "otp"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "VIET_QR"
                                ]
                              },
                              "qrCode": {
                                "type": "string",
                                "description": "QR code"
                              },
                              "otp": {
                                "type": "string",
                                "description": "OTP for the transaction"
                              },
                              "bankNotes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "number",
                                      "description": "Type of note: -1 for warning, 1 for info"
                                    },
                                    "msg": {
                                      "type": "string",
                                      "description": "Message content"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "msg"
                                  ]
                                },
                                "description": "Additional bank instructions"
                              }
                            },
                            "required": [
                              "depositType",
                              "qrCode",
                              "otp"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "GCASH"
                                ]
                              },
                              "qrCode": {
                                "type": "string",
                                "description": "QR code"
                              },
                              "otp": {
                                "type": "string",
                                "description": "OTP for the transaction"
                              },
                              "bankNotes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "number",
                                      "description": "Type of note: -1 for warning, 1 for info"
                                    },
                                    "msg": {
                                      "type": "string",
                                      "description": "Message content"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "msg"
                                  ]
                                },
                                "description": "Additional bank instructions"
                              }
                            },
                            "required": [
                              "depositType",
                              "qrCode",
                              "otp"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "ARGENTINA_BANK_TRANSFER"
                                ]
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Account number"
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "accountNumber"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "ACH_US"
                                ]
                              },
                              "routingNumber": {
                                "type": "string",
                                "description": "US bank ABA routing number"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "US bank account number"
                              },
                              "beneficiaryName": {
                                "type": "string",
                                "description": "Beneficiary name on the account"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Name of the bank"
                              },
                              "bankAddress": {
                                "type": "string",
                                "description": "Address of the bank"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names (e.g. ACH, Wire)"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount in USD"
                              },
                              "referenceCode": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Reference code to include in the wire/ACH transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "routingNumber",
                              "accountNumber",
                              "beneficiaryName",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "ACH_PULL"
                                ]
                              }
                            },
                            "required": [
                              "depositType"
                            ],
                            "description": "Funds are pulled from the holder's own linked US bank account; no transfer instructions apply"
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "LOCALBANK"
                                ],
                                "description": "Deprecated generic local-bank payin type. Superseded by the corridor-specific deposit types (e.g. SEPA, ACH_US, GBP_BANK_TRANSFER, CLABE/SPEI, PIX, ARGENTINA_BANK_TRANSFER, BANK_DEPOSIT_<CC>). Still returned on some corridors and on historical records, so integrators must continue to handle it. Discover the applicable per-currency method via GET /v1/currencies/{currency}/payin-schema.",
                                "deprecated": true
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "GBP_BANK_TRANSFER"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "UK bank account number"
                              },
                              "sortCode": {
                                "type": "string",
                                "description": "UK sort code"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Name of the bank"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names (e.g. Faster Payments, CHAPS, BACS)"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount in GBP"
                              },
                              "referenceCode": {
                                "type": "string",
                                "minLength": 1,
                                "description": "Reference code to include in the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "accountHolder",
                              "accountNumber",
                              "sortCode",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_COL"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_CL"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_BO"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_BR"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_NG"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_KE"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_GH"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_ZA"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_TZ"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_UG"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_RW"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_MW"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_ZM"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_BW"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_CD"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_XOF"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "BANK_DEPOSIT_XAF"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_NG"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_KE"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_GH"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_ZA"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_TZ"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_UG"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_RW"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_MW"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_ZM"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_BW"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_CD"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_XOF"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          },
                          {
                            "type": "object",
                            "properties": {
                              "depositType": {
                                "type": "string",
                                "enum": [
                                  "MOBILE_MONEY_XAF"
                                ]
                              },
                              "accountHolder": {
                                "type": "string",
                                "description": "Account holder name"
                              },
                              "accountNumber": {
                                "type": "string",
                                "description": "Local bank account number"
                              },
                              "bankName": {
                                "type": "string",
                                "description": "Bank name"
                              },
                              "bankCountry": {
                                "type": "string",
                                "description": "ISO-3166 country code"
                              },
                              "routingCodes": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "type": {
                                      "type": "string",
                                      "description": "Routing code type (e.g. \"routing_number\", \"sort_code\")"
                                    },
                                    "value": {
                                      "type": "string",
                                      "description": "Routing code value"
                                    }
                                  },
                                  "required": [
                                    "type",
                                    "value"
                                  ]
                                },
                                "description": "Routing identifiers (e.g. sort code, routing number)"
                              },
                              "schemes": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted payment scheme names for this account"
                              },
                              "amount": {
                                "type": "number",
                                "minimum": 0,
                                "description": "Expected deposit amount"
                              },
                              "referenceCode": {
                                "type": "string",
                                "description": "Reference code for the transfer"
                              }
                            },
                            "required": [
                              "depositType",
                              "amount",
                              "referenceCode"
                            ]
                          }
                        ],
                        "description": "Details of the deposit",
                        "examples": [
                          {
                            "accountHolder": "John Doe",
                            "iban": "DE8937XXXXXXXXXXXX3000",
                            "bic": "COBADEFFXXX",
                            "bankName": "Commerzbank",
                            "bankAddress": "Mainzer Landstrasse 151-153",
                            "bankCity": "Frankfurt",
                            "bankZipcode": "60327",
                            "bankCountry": "DE",
                            "amount": 1000,
                            "referenceCode": "ABC123",
                            "depositType": "SEPA"
                          }
                        ]
                      },
                      "description": "Methods of the deposit"
                    }
                  },
                  "required": [
                    "methods"
                  ],
                  "description": "Response schema for listing deposit instructions for a deposit"
                }
              }
            }
          },
          "404": {
            "description": "Deposit or order not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/deposits/dep_3F2b8Qure/methods\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/deposits/dep_3F2b8Qure/methods\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/deposits/dep_3F2b8Qure/methods\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/currencies": {
      "get": {
        "summary": "List available currencies and capabilities",
        "description": "Returns the origin (payin) and destination (payout) currencies enabled for the authenticated workspace, the countries derived from them, and the `holdableCurrencies` list (which can be held as an internal balance). Anything available but not holdable is rail-only. `exchangeableDestinationsByCurrency` maps each holdable origin currency to the holdable destinations it can currently be exchanged into — a live, pairwise signal: offer only the pairs listed there. Start here, then drill into a currency with the per-currency discovery endpoints below.",
        "tags": [
          "Currencies"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "responses": {
          "200": {
            "description": "Available currencies and capabilities",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "availableOriginCurrencies": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "name": {
                                "type": "string",
                                "description": "Full currency name"
                              },
                              "symbol": {
                                "type": "string",
                                "description": "Currency symbol/code"
                              },
                              "countries": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Countries where the currency is used"
                              },
                              "imageUrl": {
                                "type": "string",
                                "description": "URL to the currency icon"
                              },
                              "networks": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "name": {
                                      "type": "string",
                                      "description": "Network display name"
                                    },
                                    "id": {
                                      "type": "string",
                                      "description": "Network identifier"
                                    },
                                    "iconUrl": {
                                      "type": "string",
                                      "description": "URL to the network icon"
                                    },
                                    "needsMemo": {
                                      "type": "boolean",
                                      "description": "Whether a memo/tag is required for this network"
                                    },
                                    "regex": {
                                      "type": "object",
                                      "additionalProperties": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        }
                                      },
                                      "description": "Client-side validation patterns keyed by field name"
                                    },
                                    "chainId": {
                                      "type": "number",
                                      "description": "EVM chain id (mainnet)"
                                    },
                                    "chainIdTestnet": {
                                      "type": "number",
                                      "description": "EVM chain id (testnet)"
                                    },
                                    "decimals": {
                                      "type": "number",
                                      "description": "Token decimals on this network"
                                    },
                                    "depositRail": {
                                      "type": "string",
                                      "description": "Deposit rail identifier to pass to provisioning"
                                    }
                                  },
                                  "required": [
                                    "name",
                                    "id",
                                    "iconUrl"
                                  ],
                                  "description": "Network configuration for a currency"
                                },
                                "description": "Networks available for this currency (crypto/rail)"
                              },
                              "contractAddresses": {
                                "type": "object",
                                "properties": {
                                  "mainnet": {
                                    "type": "string"
                                  },
                                  "sepolia": {
                                    "type": "string"
                                  },
                                  "celo-sepolia": {
                                    "type": "string"
                                  }
                                },
                                "description": "Token contract addresses per environment (crypto currencies)"
                              },
                              "originTransferMethods": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Available deposit (payin) methods — camelCase OriginTransferMethods values"
                              },
                              "destinationTransferMethods": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Available payout methods — camelCase DestinationTransferMethods values"
                              },
                              "priceDigits": {
                                "type": "number",
                                "description": "Decimal places for price display"
                              },
                              "amountDigits": {
                                "type": "number",
                                "description": "Decimal places for amount input"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "fiat",
                                  "crypto"
                                ],
                                "description": "Type of currency (fiat or crypto)"
                              }
                            },
                            "required": [
                              "name",
                              "symbol",
                              "countries",
                              "imageUrl",
                              "originTransferMethods",
                              "destinationTransferMethods",
                              "priceDigits",
                              "amountDigits"
                            ],
                            "description": "Currency configuration and capabilities"
                          },
                          "description": "Currencies usable as the origin (payin) of an order/deposit"
                        },
                        "availableDestinationCurrencies": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "name": {
                                "type": "string",
                                "description": "Full currency name"
                              },
                              "symbol": {
                                "type": "string",
                                "description": "Currency symbol/code"
                              },
                              "countries": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Countries where the currency is used"
                              },
                              "imageUrl": {
                                "type": "string",
                                "description": "URL to the currency icon"
                              },
                              "networks": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "name": {
                                      "type": "string",
                                      "description": "Network display name"
                                    },
                                    "id": {
                                      "type": "string",
                                      "description": "Network identifier"
                                    },
                                    "iconUrl": {
                                      "type": "string",
                                      "description": "URL to the network icon"
                                    },
                                    "needsMemo": {
                                      "type": "boolean",
                                      "description": "Whether a memo/tag is required for this network"
                                    },
                                    "regex": {
                                      "type": "object",
                                      "additionalProperties": {
                                        "type": "array",
                                        "items": {
                                          "type": "string"
                                        }
                                      },
                                      "description": "Client-side validation patterns keyed by field name"
                                    },
                                    "chainId": {
                                      "type": "number",
                                      "description": "EVM chain id (mainnet)"
                                    },
                                    "chainIdTestnet": {
                                      "type": "number",
                                      "description": "EVM chain id (testnet)"
                                    },
                                    "decimals": {
                                      "type": "number",
                                      "description": "Token decimals on this network"
                                    },
                                    "depositRail": {
                                      "type": "string",
                                      "description": "Deposit rail identifier to pass to provisioning"
                                    }
                                  },
                                  "required": [
                                    "name",
                                    "id",
                                    "iconUrl"
                                  ],
                                  "description": "Network configuration for a currency"
                                },
                                "description": "Networks available for this currency (crypto/rail)"
                              },
                              "contractAddresses": {
                                "type": "object",
                                "properties": {
                                  "mainnet": {
                                    "type": "string"
                                  },
                                  "sepolia": {
                                    "type": "string"
                                  },
                                  "celo-sepolia": {
                                    "type": "string"
                                  }
                                },
                                "description": "Token contract addresses per environment (crypto currencies)"
                              },
                              "originTransferMethods": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Available deposit (payin) methods — camelCase OriginTransferMethods values"
                              },
                              "destinationTransferMethods": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Available payout methods — camelCase DestinationTransferMethods values"
                              },
                              "priceDigits": {
                                "type": "number",
                                "description": "Decimal places for price display"
                              },
                              "amountDigits": {
                                "type": "number",
                                "description": "Decimal places for amount input"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "fiat",
                                  "crypto"
                                ],
                                "description": "Type of currency (fiat or crypto)"
                              }
                            },
                            "required": [
                              "name",
                              "symbol",
                              "countries",
                              "imageUrl",
                              "originTransferMethods",
                              "destinationTransferMethods",
                              "priceDigits",
                              "amountDigits"
                            ],
                            "description": "Currency configuration and capabilities"
                          },
                          "description": "Currencies usable as the destination (payout) of an order/withdrawal"
                        },
                        "availableOriginCountries": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "name": {
                                "type": "string",
                                "description": "Country name"
                              },
                              "code": {
                                "type": "string",
                                "description": "ISO-3166 alpha-2 country code"
                              },
                              "imageUrl": {
                                "type": "string",
                                "description": "URL to the country flag image"
                              },
                              "currencies": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Currency codes used in this country"
                              }
                            },
                            "required": [
                              "name",
                              "code",
                              "imageUrl",
                              "currencies"
                            ],
                            "description": "Country configuration"
                          },
                          "description": "Countries derived from the available origin currencies"
                        },
                        "availableDestinationCountries": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "name": {
                                "type": "string",
                                "description": "Country name"
                              },
                              "code": {
                                "type": "string",
                                "description": "ISO-3166 alpha-2 country code"
                              },
                              "imageUrl": {
                                "type": "string",
                                "description": "URL to the country flag image"
                              },
                              "currencies": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Currency codes used in this country"
                              }
                            },
                            "required": [
                              "name",
                              "code",
                              "imageUrl",
                              "currencies"
                            ],
                            "description": "Country configuration"
                          },
                          "description": "Countries derived from the available destination currencies"
                        },
                        "holdableCurrencies": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Currencies the workspace can hold as an internal balance. Anything available but not listed here is rail-only (payin/payout, settles to a held currency)."
                        },
                        "exchangeableDestinationsByCurrency": {
                          "type": "object",
                          "additionalProperties": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Holdable destination currency codes reachable from this origin"
                          },
                          "description": "For each holdable origin currency, the holdable destination currencies it can currently be exchanged into over a live trading path of at most 2 hops. The relation is pairwise, not transitive: offer only the origin-to-destination pairs listed here. Omitted when the signal was not computed; an empty object means nothing is currently exchangeable."
                        }
                      },
                      "required": [
                        "availableOriginCurrencies",
                        "availableDestinationCurrencies",
                        "availableOriginCountries",
                        "availableDestinationCountries"
                      ],
                      "description": "Available origin/destination currencies + countries for the workspace, plus the holdable-currency and exchangeable-destinations capability signals"
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/currencies\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/currencies\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/currencies\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/currencies/{currency}/networks": {
      "get": {
        "summary": "Discover payout networks for a currency",
        "description": "Returns the abstract payout networks available for a local-currency corridor. Optional `rail` (BANK_DEPOSIT_<CC> or MOBILE_MONEY_<CC>) narrows the result to bank or mobile-money networks. Pass the returned `id` back as the destination network when creating a payout. Currencies without discoverable networks resolve to an empty list. An empty list always means the corridor genuinely has no matching networks, so it is safe to cache as such: if the network lookup cannot be completed this endpoint answers `503` instead of an empty list.",
        "tags": [
          "Currencies"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "description": "Currency code (e.g. EUR, USDC, NGN)",
              "example": "NGN"
            },
            "required": true,
            "description": "Currency code (e.g. EUR, USDC, NGN)",
            "name": "currency",
            "in": "path"
          },
          {
            "schema": {
              "type": "string",
              "description": "Optional rail filter. BANK_DEPOSIT_<CC> narrows to bank networks, MOBILE_MONEY_<CC> to mobile-money networks; omit for all.",
              "example": "BANK_DEPOSIT_NG"
            },
            "required": false,
            "description": "Optional rail filter. BANK_DEPOSIT_<CC> narrows to bank networks, MOBILE_MONEY_<CC> to mobile-money networks; omit for all.",
            "name": "rail",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "enum": [
                "deposit",
                "withdraw"
              ],
              "description": "Optional mobile-money direction filter — \"deposit\" (collection) or \"withdraw\" (disbursement). Narrows a mobile-money result to operators that serve that direction; omit for all.",
              "example": "withdraw"
            },
            "required": false,
            "description": "Optional mobile-money direction filter — \"deposit\" (collection) or \"withdraw\" (disbursement). Narrows a mobile-money result to operators that serve that direction; omit for all.",
            "name": "rampType",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "description": "Optional ISO-3166 alpha-2 country. For a multi-country (CFA) currency, scopes discovery to a member country from GET /v1/currencies/:currency/payin-countries.",
              "example": "SN"
            },
            "required": false,
            "description": "Optional ISO-3166 alpha-2 country. For a multi-country (CFA) currency, scopes discovery to a member country from GET /v1/currencies/:currency/payin-countries.",
            "name": "country",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "Available payout networks",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "id": {
                            "type": "string",
                            "description": "Opaque network identifier to pass back on a payout"
                          },
                          "name": {
                            "type": "string",
                            "description": "Display name of the destination network"
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "bank",
                              "momo"
                            ],
                            "description": "Whether the network is a bank or a mobile-money provider"
                          }
                        },
                        "required": [
                          "id",
                          "name",
                          "type"
                        ],
                        "additionalProperties": false,
                        "description": "A payout network available for a local-currency corridor"
                      }
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "503": {
            "description": "The network lookup could not be completed, so the answer is unknown — retry. Never returned for a corridor that simply has no networks (that is a 200 with an empty list).",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/currencies/EUR/networks\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/currencies/EUR/networks\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/currencies/EUR/networks\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/currencies/{currency}/limits": {
      "get": {
        "summary": "Get per-transaction payout amount limits for a payout corridor",
        "description": "Returns the minimum and maximum amount you can pay out in a **single transaction** for a `(destination currency, payout method)` corridor — call it to pre-validate an amount before creating an order or withdrawal. `currency` (path) is the **payout/destination** currency, in **major units**. `method` (query) is the payout rail for that currency, as a camelCase method value (e.g. `bankDepositNG`, `pixDepositBR`, `mobileMoneyKE`); get a valid value from `GET /v1/currencies/{currency}/destination-schema`. Two vocabularies, one rail: the payout payload field `destinationTransferData.type` takes a different value — the SCREAMING_SNAKE rail literal (`BANK_DEPOSIT_NG`, `PIX_BR`, `MOBILE_MONEY_KE`), which that endpoint publishes as `destinationType`. The response value is `null` when no limits are published for the corridor; when present, `min` or `max` may each be omitted if only one bound applies, and `currency` echoes the unit the limits are expressed in. A `null` always means the corridor publishes no bounds — i.e. there is nothing to pre-validate against — and never that the limits could not be read: if the limit lookup cannot be completed this endpoint answers `503` instead of `null`.",
        "tags": [
          "Currencies"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "description": "Currency code (e.g. EUR, USDC, NGN)",
              "example": "NGN"
            },
            "required": true,
            "description": "Currency code (e.g. EUR, USDC, NGN)",
            "name": "currency",
            "in": "path"
          },
          {
            "schema": {
              "type": "string",
              "description": "The payout rail for this currency, as a camelCase method value (e.g. `bankDepositNG`, `pixDepositBR`, `mobileMoneyKE`). Get a valid value from `GET /v1/currencies/{currency}/destination-schema`. Two vocabularies, one rail: the payout payload field `destinationTransferData.type` takes a different value — the SCREAMING_SNAKE rail literal (`BANK_DEPOSIT_NG`, `PIX_BR`, `MOBILE_MONEY_KE`), which that endpoint publishes as `destinationType`.",
              "example": "bankDepositNG"
            },
            "required": true,
            "description": "The payout rail for this currency, as a camelCase method value (e.g. `bankDepositNG`, `pixDepositBR`, `mobileMoneyKE`). Get a valid value from `GET /v1/currencies/{currency}/destination-schema`. Two vocabularies, one rail: the payout payload field `destinationTransferData.type` takes a different value — the SCREAMING_SNAKE rail literal (`BANK_DEPOSIT_NG`, `PIX_BR`, `MOBILE_MONEY_KE`), which that endpoint publishes as `destinationType`.",
            "name": "method",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "Payout limits (or null)",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "min": {
                          "type": "number",
                          "description": "Minimum per-transaction payout amount in the destination currency (major units); omitted if no floor applies",
                          "example": 1000
                        },
                        "max": {
                          "type": "number",
                          "description": "Maximum per-transaction payout amount in the destination currency (major units); omitted if no ceiling applies",
                          "example": 5000000
                        },
                        "currency": {
                          "type": "string",
                          "description": "Currency the limits are expressed in",
                          "example": "NGN"
                        }
                      },
                      "required": [
                        "currency"
                      ],
                      "description": "Per-transaction payout limits for a (destination currency, method) corridor; null when no published limits exist"
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "503": {
            "description": "The payout-limit lookup could not be completed, so the answer is unknown — retry. Never returned for a corridor that simply publishes no limits (that is a 200 with `null`).",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/currencies/EUR/limits\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/currencies/EUR/limits\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/currencies/EUR/limits\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/currencies/{currency}/destination-schema": {
      "get": {
        "summary": "Get the payout field schema for a currency + method",
        "description": "Returns the backend-owned payout field schema for a (currency, `method`) corridor, so you render the payout form generically instead of hardcoding fields. Includes the abstract corridor descriptor, the ordered field list (name, type, regex, options, widget), and whether the corridor uses network discovery. The `method` is a camelCase DestinationTransferMethods value.",
        "tags": [
          "Currencies"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "description": "Currency code (e.g. EUR, USDC, NGN)",
              "example": "NGN"
            },
            "required": true,
            "description": "Currency code (e.g. EUR, USDC, NGN)",
            "name": "currency",
            "in": "path"
          },
          {
            "schema": {
              "type": "string",
              "description": "Payout method — a camelCase DestinationTransferMethods value (e.g. bankDepositEU)",
              "example": "bankDepositEU"
            },
            "required": true,
            "description": "Payout method — a camelCase DestinationTransferMethods value (e.g. bankDepositEU)",
            "name": "method",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "Payout field schema",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "corridor": {
                          "type": "object",
                          "properties": {
                            "currency": {
                              "type": "string",
                              "description": "The currency this corridor describes"
                            },
                            "direction": {
                              "type": "string",
                              "enum": [
                                "payin",
                                "payout"
                              ],
                              "description": "Whether this corridor collects money (`payin`) or pays it out (`payout`)"
                            },
                            "candidates": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "party": {
                                    "type": "string",
                                    "enum": [
                                      "first_party",
                                      "third_party"
                                    ],
                                    "description": "Whose money moves. `first_party` is the entity that owns the account; `third_party` is a counterparty — a payout recipient, or a payer sending into a shared collection account."
                                  },
                                  "payerIdentity": {
                                    "type": "string",
                                    "enum": [
                                      "none",
                                      "declared",
                                      "verified"
                                    ],
                                    "description": "How deeply the payer must be identified. `none` — nothing collected. `declared` — identity data submitted with the transaction, no verification flow. `verified` — documents plus approval."
                                  },
                                  "receiverIdentity": {
                                    "type": "string",
                                    "enum": [
                                      "none",
                                      "declared",
                                      "verified"
                                    ],
                                    "description": "How deeply the receiver must be identified, on the same scale as `payerIdentity`"
                                  },
                                  "methods": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Methods this candidate alone can service — a subset of the corridor-wide `methods`"
                                  },
                                  "settledWith": {
                                    "type": "string",
                                    "description": "Held currency this candidate settles into, e.g. `USDC`. Informational: it never changes what you send or what the recipient gets."
                                  },
                                  "collectionModel": {
                                    "type": "string",
                                    "enum": [
                                      "shared_account",
                                      "per_user",
                                      "per_transaction",
                                      "linked_account_pull"
                                    ],
                                    "description": "How a payin is funded. `shared_account` — one collection account with a reference per payment. `per_user` — a dedicated account per account holder. `per_transaction` — fresh details issued for each payment. `linked_account_pull` — no details to send to: the funds are debited from a bank account the account holder linked."
                                  }
                                },
                                "required": [
                                  "party",
                                  "payerIdentity",
                                  "receiverIdentity",
                                  "methods"
                                ],
                                "additionalProperties": false
                              },
                              "description": "The routes that can service this corridor, in fallback order. More than one means the corridor has redundancy."
                            },
                            "methods": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Every method available on this corridor — the union across all candidates. Compare with a candidate’s own `methods`, which is only what that route supports."
                            },
                            "requiresIdentity": {
                              "type": "boolean",
                              "description": "True when at least one candidate needs payer or receiver identity"
                            }
                          },
                          "required": [
                            "currency",
                            "direction",
                            "candidates",
                            "methods",
                            "requiresIdentity"
                          ],
                          "additionalProperties": false,
                          "description": "Abstract corridor descriptor (no provider names)"
                        },
                        "method": {
                          "type": "string",
                          "description": "The payout method this schema describes"
                        },
                        "fields": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "name": {
                                "type": "string",
                                "description": "Field name to submit on the payout"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "text",
                                  "number",
                                  "tel"
                                ],
                                "description": "Input type hint for rendering"
                              },
                              "required": {
                                "type": "boolean",
                                "description": "Whether the field is mandatory"
                              },
                              "regex": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted patterns (value must match at least one)"
                              },
                              "options": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "value": {
                                      "type": "string",
                                      "description": "Option value submitted on payout"
                                    },
                                    "label": {
                                      "type": "string",
                                      "description": "Option label (may itself be an i18n key)"
                                    },
                                    "i18nKey": {
                                      "type": "string",
                                      "description": "Optional i18n key for the option label — the client resolves it"
                                    }
                                  },
                                  "required": [
                                    "value",
                                    "label"
                                  ],
                                  "additionalProperties": false
                                },
                                "description": "Fixed select options, when applicable"
                              },
                              "widget": {
                                "type": "string",
                                "enum": [
                                  "network"
                                ],
                                "description": "When \"network\", render a picker fed by GET /v1/currencies/:currency/networks"
                              },
                              "i18nKey": {
                                "type": "string",
                                "description": "Locale-agnostic i18n key — the client resolves the label"
                              },
                              "validator": {
                                "type": "string",
                                "enum": [
                                  "iban",
                                  "clabe"
                                ],
                                "description": "Named client-side validator to run in addition to regex"
                              },
                              "normalize": {
                                "type": "string",
                                "enum": [
                                  "stripSpacesUpper",
                                  "upper"
                                ],
                                "description": "Normalization the client applies before validating/submitting"
                              }
                            },
                            "required": [
                              "name",
                              "type",
                              "required",
                              "regex",
                              "i18nKey"
                            ],
                            "additionalProperties": false,
                            "description": "A single payout field descriptor"
                          },
                          "description": "Ordered list of fields to collect for the payout"
                        },
                        "supportsNetworkDiscovery": {
                          "type": "boolean",
                          "description": "Whether GET /v1/currencies/:currency/networks returns networks for this corridor"
                        },
                        "networkDiscoveryRail": {
                          "type": "string",
                          "description": "Rail to pass to /networks?rail= for this method, when applicable"
                        },
                        "destinationType": {
                          "type": "string",
                          "description": "The value to send as `destinationTransferData.type` when you create the order or withdrawal for this method — the SCREAMING_SNAKE rail literal, not the camelCase `method` above (e.g. `BANK_DEPOSIT_VEN` for method `bankDepositVEN`). Present on every response this endpoint returns: it serves fiat payout corridors and each one has a rail literal. The field is declared optional because the derivation omits an ambiguous method rather than guessing one — `cryptoWallet` is the only ambiguous method and no fiat payout corridor exposes it. For a **crypto** payout take the chain literal from the `type` enum of `destinationTransferData` itself (`ETH`, `MATIC`, `TRON`, `SOL`, …), which lists every accepted value.",
                          "example": "BANK_DEPOSIT_VEN"
                        }
                      },
                      "required": [
                        "corridor",
                        "method",
                        "fields",
                        "supportsNetworkDiscovery"
                      ],
                      "additionalProperties": false,
                      "description": "Payout field schema for a (currency, method) corridor"
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "400": {
            "description": "The method is unknown, unavailable, or has no field schema",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "404": {
            "description": "The currency has no payout corridor",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/currencies/EUR/destination-schema\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/currencies/EUR/destination-schema\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/currencies/EUR/destination-schema\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/currencies/{currency}/payin-schema": {
      "get": {
        "summary": "Get the payin schema for a currency",
        "description": "Returns the abstract payin corridor descriptor for a currency: the collection model(s), the origin (deposit) methods, and a provisional flag when more than one payin provider serves the currency. Deposit INSTRUCTIONS are not returned here — those are provisioned per transaction and live on the order/deposit response. Payout-only currencies return a 400.",
        "tags": [
          "Currencies"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "description": "Currency code (e.g. EUR, USDC, NGN)",
              "example": "NGN"
            },
            "required": true,
            "description": "Currency code (e.g. EUR, USDC, NGN)",
            "name": "currency",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Payin schema",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "corridor": {
                          "type": "object",
                          "properties": {
                            "currency": {
                              "type": "string",
                              "description": "The currency this corridor describes"
                            },
                            "direction": {
                              "type": "string",
                              "enum": [
                                "payin",
                                "payout"
                              ],
                              "description": "Whether this corridor collects money (`payin`) or pays it out (`payout`)"
                            },
                            "candidates": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "party": {
                                    "type": "string",
                                    "enum": [
                                      "first_party",
                                      "third_party"
                                    ],
                                    "description": "Whose money moves. `first_party` is the entity that owns the account; `third_party` is a counterparty — a payout recipient, or a payer sending into a shared collection account."
                                  },
                                  "payerIdentity": {
                                    "type": "string",
                                    "enum": [
                                      "none",
                                      "declared",
                                      "verified"
                                    ],
                                    "description": "How deeply the payer must be identified. `none` — nothing collected. `declared` — identity data submitted with the transaction, no verification flow. `verified` — documents plus approval."
                                  },
                                  "receiverIdentity": {
                                    "type": "string",
                                    "enum": [
                                      "none",
                                      "declared",
                                      "verified"
                                    ],
                                    "description": "How deeply the receiver must be identified, on the same scale as `payerIdentity`"
                                  },
                                  "methods": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Methods this candidate alone can service — a subset of the corridor-wide `methods`"
                                  },
                                  "settledWith": {
                                    "type": "string",
                                    "description": "Held currency this candidate settles into, e.g. `USDC`. Informational: it never changes what you send or what the recipient gets."
                                  },
                                  "collectionModel": {
                                    "type": "string",
                                    "enum": [
                                      "shared_account",
                                      "per_user",
                                      "per_transaction",
                                      "linked_account_pull"
                                    ],
                                    "description": "How a payin is funded. `shared_account` — one collection account with a reference per payment. `per_user` — a dedicated account per account holder. `per_transaction` — fresh details issued for each payment. `linked_account_pull` — no details to send to: the funds are debited from a bank account the account holder linked."
                                  }
                                },
                                "required": [
                                  "party",
                                  "payerIdentity",
                                  "receiverIdentity",
                                  "methods"
                                ],
                                "additionalProperties": false
                              },
                              "description": "The routes that can service this corridor, in fallback order. More than one means the corridor has redundancy."
                            },
                            "methods": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Every method available on this corridor — the union across all candidates. Compare with a candidate’s own `methods`, which is only what that route supports."
                            },
                            "requiresIdentity": {
                              "type": "boolean",
                              "description": "True when at least one candidate needs payer or receiver identity"
                            }
                          },
                          "required": [
                            "currency",
                            "direction",
                            "candidates",
                            "methods",
                            "requiresIdentity"
                          ],
                          "additionalProperties": false,
                          "description": "Abstract corridor descriptor (no provider names)"
                        },
                        "payinModels": {
                          "type": "array",
                          "items": {
                            "type": "string",
                            "enum": [
                              "per_user",
                              "shared_account",
                              "per_transaction",
                              "linked_account_pull"
                            ]
                          },
                          "description": "Deterministic union of collection models across payin providers (declaration order)"
                        },
                        "payinModel": {
                          "type": "string",
                          "nullable": true,
                          "enum": [
                            "per_user",
                            "shared_account",
                            "per_transaction",
                            "linked_account_pull"
                          ],
                          "description": "Primary (declaration-order head) collection model — provisional when primaryProviderOnly is true"
                        },
                        "originMethods": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Origin (collection) methods the customer may use to deposit"
                        },
                        "payinMethods": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "type": {
                                "type": "string",
                                "enum": [
                                  "bank",
                                  "mobileMoney",
                                  "pix"
                                ]
                              },
                              "rail": {
                                "type": "string"
                              }
                            },
                            "required": [
                              "type",
                              "rail"
                            ]
                          },
                          "description": "Payer-facing collection channels: abstract channel type plus the canonical originRail to send on a quote. Empty when the corridor declares no per-currency rail (EUR/USD/GBP, crypto) — those are unguarded and you may pick your own rail."
                        },
                        "acceptedOriginRails": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          },
                          "description": "Every originRail a quote will be ACCEPTED with for this currency — the canonical rails above plus equivalent spellings of the same channel (e.g. ARS accepts BANK_DEPOSIT_AR and ARGENTINA_BANK_TRANSFER). Empty means the corridor is unguarded. Read this to discover the rail the quote requires instead of discovering it through a 400."
                        },
                        "primaryProviderOnly": {
                          "type": "boolean",
                          "description": "True when >1 payin provider serves this currency, so payinModel is the provisional head"
                        }
                      },
                      "required": [
                        "corridor",
                        "payinModels",
                        "payinModel",
                        "originMethods",
                        "payinMethods",
                        "acceptedOriginRails",
                        "primaryProviderOnly"
                      ],
                      "additionalProperties": false,
                      "description": "Abstract payin schema for a currency (deposit instructions live on the order)"
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "400": {
            "description": "The currency has no payin corridor",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/currencies/EUR/payin-schema\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/currencies/EUR/payin-schema\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/currencies/EUR/payin-schema\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/currencies/{currency}/identity-schema": {
      "get": {
        "summary": "Get the identity intake schema for a corridor party",
        "description": "Returns the backend-owned identity intake for a corridor party: the identity flow (none / declared / verified), the declared-metadata fields to collect (when declared), and whether a verification widget or manual review applies. Requires `direction` (payin or payout) and `entityType` (individual or organisation).\n\n**Where the declared fields go.** For `direction=payout`, send the values you collect in `destinationUserData` on `POST /v1/orders` (and on `POST /v1/withdrawals`), using these same field names — that is the intake this schema describes, and the corridor rejects the order at creation if a required one is missing or blank. An empty string does not satisfy a required field. If you also identify the recipient with a `destination` block (`contactId` or `contactEmail`) and `destinationUserData.userEmail` names a DIFFERENT party, the request is rejected with a validation error rather than mixing the two identities: send the identity for the recipient you name, or omit the destination identifier.",
        "tags": [
          "Currencies"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "description": "Currency code (e.g. EUR, USDC, NGN)",
              "example": "NGN"
            },
            "required": true,
            "description": "Currency code (e.g. EUR, USDC, NGN)",
            "name": "currency",
            "in": "path"
          },
          {
            "schema": {
              "type": "string",
              "enum": [
                "payin",
                "payout"
              ],
              "description": "Corridor direction the identity intake applies to"
            },
            "required": true,
            "description": "Corridor direction the identity intake applies to",
            "name": "direction",
            "in": "query"
          },
          {
            "schema": {
              "type": "string",
              "enum": [
                "individual",
                "organisation"
              ],
              "description": "Party entity type (individual → KYC, organisation → KYB)"
            },
            "required": true,
            "description": "Party entity type (individual → KYC, organisation → KYB)",
            "name": "entityType",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "Identity intake schema",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "corridor": {
                          "type": "object",
                          "properties": {
                            "currency": {
                              "type": "string",
                              "description": "The currency this corridor describes"
                            },
                            "direction": {
                              "type": "string",
                              "enum": [
                                "payin",
                                "payout"
                              ],
                              "description": "Whether this corridor collects money (`payin`) or pays it out (`payout`)"
                            },
                            "candidates": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "party": {
                                    "type": "string",
                                    "enum": [
                                      "first_party",
                                      "third_party"
                                    ],
                                    "description": "Whose money moves. `first_party` is the entity that owns the account; `third_party` is a counterparty — a payout recipient, or a payer sending into a shared collection account."
                                  },
                                  "payerIdentity": {
                                    "type": "string",
                                    "enum": [
                                      "none",
                                      "declared",
                                      "verified"
                                    ],
                                    "description": "How deeply the payer must be identified. `none` — nothing collected. `declared` — identity data submitted with the transaction, no verification flow. `verified` — documents plus approval."
                                  },
                                  "receiverIdentity": {
                                    "type": "string",
                                    "enum": [
                                      "none",
                                      "declared",
                                      "verified"
                                    ],
                                    "description": "How deeply the receiver must be identified, on the same scale as `payerIdentity`"
                                  },
                                  "methods": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    },
                                    "description": "Methods this candidate alone can service — a subset of the corridor-wide `methods`"
                                  },
                                  "settledWith": {
                                    "type": "string",
                                    "description": "Held currency this candidate settles into, e.g. `USDC`. Informational: it never changes what you send or what the recipient gets."
                                  },
                                  "collectionModel": {
                                    "type": "string",
                                    "enum": [
                                      "shared_account",
                                      "per_user",
                                      "per_transaction",
                                      "linked_account_pull"
                                    ],
                                    "description": "How a payin is funded. `shared_account` — one collection account with a reference per payment. `per_user` — a dedicated account per account holder. `per_transaction` — fresh details issued for each payment. `linked_account_pull` — no details to send to: the funds are debited from a bank account the account holder linked."
                                  }
                                },
                                "required": [
                                  "party",
                                  "payerIdentity",
                                  "receiverIdentity",
                                  "methods"
                                ],
                                "additionalProperties": false
                              },
                              "description": "The routes that can service this corridor, in fallback order. More than one means the corridor has redundancy."
                            },
                            "methods": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              },
                              "description": "Every method available on this corridor — the union across all candidates. Compare with a candidate’s own `methods`, which is only what that route supports."
                            },
                            "requiresIdentity": {
                              "type": "boolean",
                              "description": "True when at least one candidate needs payer or receiver identity"
                            }
                          },
                          "required": [
                            "currency",
                            "direction",
                            "candidates",
                            "methods",
                            "requiresIdentity"
                          ],
                          "additionalProperties": false,
                          "description": "Abstract corridor descriptor (no provider names)"
                        },
                        "direction": {
                          "type": "string",
                          "enum": [
                            "payin",
                            "payout"
                          ],
                          "description": "The corridor direction this identity schema describes"
                        },
                        "entityType": {
                          "type": "string",
                          "enum": [
                            "individual",
                            "organisation"
                          ],
                          "description": "The party entity type (KYC vs KYB field set)"
                        },
                        "identityFlow": {
                          "type": "string",
                          "enum": [
                            "none",
                            "declared",
                            "verified"
                          ],
                          "description": "Identity depth: none (no identity), declared (collect metadata), verified (full KYC/KYB)"
                        },
                        "fields": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "name": {
                                "type": "string",
                                "description": "Field name to submit on the payout"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "text",
                                  "number",
                                  "tel"
                                ],
                                "description": "Input type hint for rendering"
                              },
                              "required": {
                                "type": "boolean",
                                "description": "Whether the field is mandatory"
                              },
                              "regex": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted patterns (value must match at least one)"
                              },
                              "options": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "value": {
                                      "type": "string",
                                      "description": "Option value submitted on payout"
                                    },
                                    "label": {
                                      "type": "string",
                                      "description": "Option label (may itself be an i18n key)"
                                    },
                                    "i18nKey": {
                                      "type": "string",
                                      "description": "Optional i18n key for the option label — the client resolves it"
                                    }
                                  },
                                  "required": [
                                    "value",
                                    "label"
                                  ],
                                  "additionalProperties": false
                                },
                                "description": "Fixed select options, when applicable"
                              },
                              "widget": {
                                "type": "string",
                                "enum": [
                                  "network"
                                ],
                                "description": "When \"network\", render a picker fed by GET /v1/currencies/:currency/networks"
                              },
                              "i18nKey": {
                                "type": "string",
                                "description": "Locale-agnostic i18n key — the client resolves the label"
                              },
                              "validator": {
                                "type": "string",
                                "enum": [
                                  "iban",
                                  "clabe"
                                ],
                                "description": "Named client-side validator to run in addition to regex"
                              },
                              "normalize": {
                                "type": "string",
                                "enum": [
                                  "stripSpacesUpper",
                                  "upper"
                                ],
                                "description": "Normalization the client applies before validating/submitting"
                              }
                            },
                            "required": [
                              "name",
                              "type",
                              "required",
                              "regex",
                              "i18nKey"
                            ],
                            "additionalProperties": false,
                            "description": "A single payout field descriptor"
                          },
                          "description": "Declared-identity metadata fields to collect (empty unless identityFlow is \"declared\")"
                        },
                        "requiresWidget": {
                          "type": "boolean",
                          "description": "When true, identity is collected via a verification widget (verified individual)"
                        },
                        "kybIntake": {
                          "type": "string",
                          "enum": [
                            "manual_review"
                          ],
                          "description": "Present for verified organisations — KYB is a manual review intake"
                        }
                      },
                      "required": [
                        "corridor",
                        "direction",
                        "entityType",
                        "identityFlow",
                        "fields",
                        "requiresWidget"
                      ],
                      "additionalProperties": false,
                      "description": "Per-corridor identity schema for a (currency, direction, entityType)"
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Missing/invalid direction or entityType, or the entity type is not served",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "404": {
            "description": "The currency has no corridor for the direction",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/currencies/EUR/identity-schema\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/currencies/EUR/identity-schema\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/currencies/EUR/identity-schema\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/currencies/{currency}/documentation-schema": {
      "get": {
        "summary": "Get the trade-documentation requirement for a currency + method",
        "description": "Returns the trade documentation a (currency, `method`) payout corridor requires before it can be executed (e.g. a mandatory contract PDF for a CN bank deposit). Returns `required:false` with an empty field list when the corridor needs none. The uploaded binary is NOT submitted here — it is uploaded after the order is created via the compliance-docs endpoint. The `method` is a camelCase DestinationTransferMethods value.",
        "tags": [
          "Currencies"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "description": "Currency code (e.g. EUR, USDC, NGN)",
              "example": "NGN"
            },
            "required": true,
            "description": "Currency code (e.g. EUR, USDC, NGN)",
            "name": "currency",
            "in": "path"
          },
          {
            "schema": {
              "type": "string",
              "description": "Payout method — a camelCase DestinationTransferMethods value (e.g. bankDepositCN)",
              "example": "bankDepositCN"
            },
            "required": true,
            "description": "Payout method — a camelCase DestinationTransferMethods value (e.g. bankDepositCN)",
            "name": "method",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "Documentation requirement schema",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "object",
                      "properties": {
                        "method": {
                          "type": "string",
                          "description": "The payout method this documentation applies to"
                        },
                        "required": {
                          "type": "boolean",
                          "description": "Whether documentation must be supplied before payout"
                        },
                        "fields": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "name": {
                                "type": "string",
                                "description": "Field name to submit / attach on the payout"
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "text",
                                  "number",
                                  "tel",
                                  "file",
                                  "group"
                                ],
                                "description": "Input type hint for rendering"
                              },
                              "required": {
                                "type": "boolean",
                                "description": "Whether the field is mandatory"
                              },
                              "regex": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Accepted patterns (value must match at least one)"
                              },
                              "i18nKey": {
                                "type": "string",
                                "description": "Locale-agnostic i18n key — the client resolves the label"
                              },
                              "accept": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "For file fields: accepted MIME types AND filename extensions (e.g. application/pdf, .pdf) — match on either, since some browsers report an empty file type"
                              },
                              "maxSizeMb": {
                                "type": "number",
                                "description": "For file fields: maximum upload size in megabytes"
                              },
                              "options": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "value": {
                                      "type": "string",
                                      "description": "Value to submit for this choice"
                                    },
                                    "label": {
                                      "type": "string",
                                      "description": "Human-readable fallback label"
                                    },
                                    "i18nKey": {
                                      "type": "string",
                                      "description": "i18n key the client resolves in preference to `label`"
                                    }
                                  },
                                  "required": [
                                    "value",
                                    "label"
                                  ]
                                },
                                "description": "Fixed select options, when the field is a closed choice"
                              },
                              "repeatable": {
                                "type": "boolean",
                                "description": "For group fields: whether the sub-form may be repeated as a list"
                              },
                              "min": {
                                "type": "number",
                                "description": "For repeatable group fields: minimum number of entries"
                              },
                              "max": {
                                "type": "number",
                                "description": "For repeatable group fields: maximum number of entries"
                              },
                              "fields": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "name": {
                                      "type": "string",
                                      "description": "Field name to submit / attach on the payout"
                                    },
                                    "type": {
                                      "type": "string",
                                      "enum": [
                                        "text",
                                        "number",
                                        "tel",
                                        "file",
                                        "group"
                                      ],
                                      "description": "Input type hint for rendering"
                                    },
                                    "required": {
                                      "type": "boolean",
                                      "description": "Whether the field is mandatory"
                                    },
                                    "regex": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "Accepted patterns (value must match at least one)"
                                    },
                                    "i18nKey": {
                                      "type": "string",
                                      "description": "Locale-agnostic i18n key — the client resolves the label"
                                    },
                                    "accept": {
                                      "type": "array",
                                      "items": {
                                        "type": "string"
                                      },
                                      "description": "For file fields: accepted MIME types AND filename extensions (e.g. application/pdf, .pdf) — match on either, since some browsers report an empty file type"
                                    },
                                    "maxSizeMb": {
                                      "type": "number",
                                      "description": "For file fields: maximum upload size in megabytes"
                                    },
                                    "options": {
                                      "type": "array",
                                      "items": {
                                        "type": "object",
                                        "properties": {
                                          "value": {
                                            "type": "string",
                                            "description": "Value to submit for this choice"
                                          },
                                          "label": {
                                            "type": "string",
                                            "description": "Human-readable fallback label"
                                          },
                                          "i18nKey": {
                                            "type": "string",
                                            "description": "i18n key the client resolves in preference to `label`"
                                          }
                                        },
                                        "required": [
                                          "value",
                                          "label"
                                        ]
                                      },
                                      "description": "Fixed select options, when the field is a closed choice"
                                    },
                                    "repeatable": {
                                      "type": "boolean",
                                      "description": "For group fields: whether the sub-form may be repeated as a list"
                                    },
                                    "min": {
                                      "type": "number",
                                      "description": "For repeatable group fields: minimum number of entries"
                                    },
                                    "max": {
                                      "type": "number",
                                      "description": "For repeatable group fields: maximum number of entries"
                                    }
                                  },
                                  "required": [
                                    "name",
                                    "type",
                                    "required",
                                    "regex",
                                    "i18nKey"
                                  ],
                                  "additionalProperties": false
                                },
                                "description": "For group fields: the sub-field manifest rendered inside each entry"
                              }
                            },
                            "required": [
                              "name",
                              "type",
                              "required",
                              "regex",
                              "i18nKey"
                            ],
                            "additionalProperties": false,
                            "description": "A single documentation field descriptor for a corridor"
                          },
                          "description": "Ordered list of documentation fields to collect (empty when none)"
                        },
                        "allowsAttachments": {
                          "type": "boolean",
                          "description": "Whether free-form supporting attachments may be added"
                        },
                        "attachmentRequired": {
                          "type": "boolean",
                          "description": "Whether at least one attachment is mandatory"
                        }
                      },
                      "required": [
                        "method",
                        "required",
                        "fields",
                        "allowsAttachments",
                        "attachmentRequired"
                      ],
                      "additionalProperties": false,
                      "description": "Trade-documentation requirement for a (currency, method) payout corridor"
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "400": {
            "description": "The method is unknown or not available for the currency",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "404": {
            "description": "The currency has no payout corridor",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/currencies/EUR/documentation-schema\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/currencies/EUR/documentation-schema\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/currencies/EUR/documentation-schema\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/currencies/{currency}/payin-countries": {
      "get": {
        "summary": "Get the collection countries for a multi-country currency",
        "description": "For a multi-country collection currency (the CFA zones — XOF covers CI/SN/TG/BJ, XAF covers CM/CG/GA), returns the member countries a payer may select as the origin country. `originCountry` on a deposit/order is validated against this set. Returns an empty array for single-country currencies.",
        "tags": [
          "Currencies"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "description": "Currency code (e.g. EUR, USDC, NGN)",
              "example": "NGN"
            },
            "required": true,
            "description": "Currency code (e.g. EUR, USDC, NGN)",
            "name": "currency",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "Collection countries (may be empty)",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "enum": [
                        true
                      ]
                    },
                    "value": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "code": {
                            "type": "string",
                            "description": "ISO-3166 alpha-2 country code",
                            "example": "SN"
                          },
                          "name": {
                            "type": "string",
                            "description": "Country name",
                            "example": "Senegal"
                          }
                        },
                        "required": [
                          "code",
                          "name"
                        ],
                        "additionalProperties": false,
                        "description": "A payer-selectable collection country for a multi-country currency"
                      },
                      "description": "Collection countries a payer may select as origin for a multi-country currency (empty for single-country currencies)"
                    }
                  },
                  "required": [
                    "ok",
                    "value"
                  ]
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/currencies/EUR/payin-countries\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/currencies/EUR/payin-countries\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/currencies/EUR/payin-countries\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/health": {
      "get": {
        "summary": "Platform health",
        "description": "Public, unauthenticated snapshot of platform health as abstract product areas (`operational` / `degraded` / `down`). No authentication required; safe to poll (e.g. every 30s) for a status page.",
        "tags": [
          "System"
        ],
        "security": [],
        "responses": {
          "200": {
            "description": "Current platform health",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PublicHealthResponse"
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/health\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/health\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/health\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/aml-screenings": {
      "post": {
        "summary": "Screen an individual or organisation",
        "description": "\nScreens a single individual or organisation against sanctions, PEP, watchlist and adverse-media data. No transaction is required.\n\n### How screening works\n\n1. Call `POST /v1/aml-screenings` with the subject's `entity` (declare `entityType` and provide at least one name or identifier) and a `reason`.\n2. The response reports a `result`:\n   - **CLEAR** — no matches (`match: false`).\n   - **POTENTIAL_MATCH** / **REVIEW_REQUIRED** — one or more potential matches (`match: true`). A potential match is **never** a confirmed match; it requires review.\n   - **INSUFFICIENT_DATA** — not enough identity information to screen (`status: NOT_COMPLETED`, `match: null`); see `errors`.\n3. Retrieve a screening later with `GET /v1/aml-screenings/{screeningId}`.\n\n### Idempotency\n\nSend an `Idempotency-Key` header (≤128 characters) to make retries safe: keys are scoped to your workspace; replaying the same key returns the original screening; reusing it with a different payload is rejected with `409`. (The three money write routes carry their own, stricter contract — see **Idempotent writes** at the top of this guide.)\n\n### Notes\n\n- Responses summarise the outcome (result, match, counts). Raw match details are retained for compliance review and are not returned here.\n- Screening must be enabled for your workspace.\n",
        "tags": [
          "AML Screening"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "maxLength": 128,
              "description": "Optional idempotency key (≤128 chars). Replaying it returns the original screening; reusing it with a different payload is rejected."
            },
            "required": false,
            "description": "Optional idempotency key (≤128 chars). Replaying it returns the original screening; reusing it with a different payload is rejected.",
            "name": "Idempotency-Key",
            "in": "header"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "entity": {
                    "type": "object",
                    "properties": {
                      "entityType": {
                        "type": "string",
                        "enum": [
                          "INDIVIDUAL",
                          "COMPANY"
                        ],
                        "description": "Whether the subject is a natural person or an organisation."
                      },
                      "firstName": {
                        "type": "string",
                        "maxLength": 256,
                        "description": "Given name of an individual subject."
                      },
                      "lastName": {
                        "type": "string",
                        "maxLength": 256,
                        "description": "Family name of an individual subject."
                      },
                      "fullName": {
                        "type": "string",
                        "maxLength": 256,
                        "description": "Full name of the subject. Accepted for both individuals and organisations."
                      },
                      "companyName": {
                        "type": "string",
                        "maxLength": 256,
                        "description": "Legal name of an organisation subject."
                      },
                      "email": {
                        "type": "string",
                        "maxLength": 256,
                        "format": "email",
                        "description": "Contact email used to resolve an existing verified subject."
                      },
                      "dateOfBirth": {
                        "type": "string",
                        "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
                        "description": "Date of birth of an individual subject (YYYY-MM-DD)."
                      },
                      "nationality": {
                        "type": "string",
                        "enum": [
                          "US",
                          "CA",
                          "GB",
                          "DE",
                          "FR",
                          "AU",
                          "JP",
                          "KR",
                          "SE",
                          "NO",
                          "DK",
                          "FI",
                          "NL",
                          "BE",
                          "CH",
                          "AT",
                          "NZ",
                          "SG",
                          "IE",
                          "LU",
                          "PT",
                          "ES",
                          "IT",
                          "GR",
                          "CZ",
                          "PL",
                          "HU",
                          "SK",
                          "SI",
                          "EE",
                          "LT",
                          "LV",
                          "IS",
                          "MT",
                          "CY",
                          "HR",
                          "RO",
                          "BG",
                          "BR",
                          "AR",
                          "CL",
                          "MX",
                          "CO",
                          "PE",
                          "PA",
                          "UY",
                          "BO",
                          "ZA",
                          "NG",
                          "KE",
                          "GH",
                          "TZ",
                          "UG",
                          "RW",
                          "MW",
                          "ZM",
                          "BW",
                          "CD",
                          "CI",
                          "CM",
                          "IL",
                          "AE",
                          "QA",
                          "SA",
                          "OM",
                          "KW",
                          "BH",
                          "MY",
                          "PH",
                          "TH",
                          "VN",
                          "ID",
                          "IN",
                          "LK",
                          "NP",
                          "BD",
                          "PK",
                          "EG",
                          "MA",
                          "DZ",
                          "TN",
                          "JO",
                          "LB",
                          "TR",
                          "KH",
                          "MM",
                          "LA",
                          "EN",
                          "BT",
                          "VE",
                          "TW",
                          "HK",
                          "CN"
                        ],
                        "description": "Nationality of an individual subject (ISO-3166 alpha-2)."
                      },
                      "countryOfResidence": {
                        "type": "string",
                        "enum": [
                          "US",
                          "CA",
                          "GB",
                          "DE",
                          "FR",
                          "AU",
                          "JP",
                          "KR",
                          "SE",
                          "NO",
                          "DK",
                          "FI",
                          "NL",
                          "BE",
                          "CH",
                          "AT",
                          "NZ",
                          "SG",
                          "IE",
                          "LU",
                          "PT",
                          "ES",
                          "IT",
                          "GR",
                          "CZ",
                          "PL",
                          "HU",
                          "SK",
                          "SI",
                          "EE",
                          "LT",
                          "LV",
                          "IS",
                          "MT",
                          "CY",
                          "HR",
                          "RO",
                          "BG",
                          "BR",
                          "AR",
                          "CL",
                          "MX",
                          "CO",
                          "PE",
                          "PA",
                          "UY",
                          "BO",
                          "ZA",
                          "NG",
                          "KE",
                          "GH",
                          "TZ",
                          "UG",
                          "RW",
                          "MW",
                          "ZM",
                          "BW",
                          "CD",
                          "CI",
                          "CM",
                          "IL",
                          "AE",
                          "QA",
                          "SA",
                          "OM",
                          "KW",
                          "BH",
                          "MY",
                          "PH",
                          "TH",
                          "VN",
                          "ID",
                          "IN",
                          "LK",
                          "NP",
                          "BD",
                          "PK",
                          "EG",
                          "MA",
                          "DZ",
                          "TN",
                          "JO",
                          "LB",
                          "TR",
                          "KH",
                          "MM",
                          "LA",
                          "EN",
                          "BT",
                          "VE",
                          "TW",
                          "HK",
                          "CN"
                        ],
                        "description": "Country of residence of the subject (ISO-3166 alpha-2)."
                      },
                      "taxIdentificationNumber": {
                        "type": "string",
                        "maxLength": 64,
                        "description": "Tax identification number of the subject."
                      },
                      "taxIdentificationType": {
                        "type": "string",
                        "enum": [
                          "NIF",
                          "NIE",
                          "CIF",
                          "VAT",
                          "OTHER"
                        ],
                        "description": "Type of the supplied tax identification number."
                      },
                      "taxIdentificationCountry": {
                        "type": "string",
                        "enum": [
                          "US",
                          "CA",
                          "GB",
                          "DE",
                          "FR",
                          "AU",
                          "JP",
                          "KR",
                          "SE",
                          "NO",
                          "DK",
                          "FI",
                          "NL",
                          "BE",
                          "CH",
                          "AT",
                          "NZ",
                          "SG",
                          "IE",
                          "LU",
                          "PT",
                          "ES",
                          "IT",
                          "GR",
                          "CZ",
                          "PL",
                          "HU",
                          "SK",
                          "SI",
                          "EE",
                          "LT",
                          "LV",
                          "IS",
                          "MT",
                          "CY",
                          "HR",
                          "RO",
                          "BG",
                          "BR",
                          "AR",
                          "CL",
                          "MX",
                          "CO",
                          "PE",
                          "PA",
                          "UY",
                          "BO",
                          "ZA",
                          "NG",
                          "KE",
                          "GH",
                          "TZ",
                          "UG",
                          "RW",
                          "MW",
                          "ZM",
                          "BW",
                          "CD",
                          "CI",
                          "CM",
                          "IL",
                          "AE",
                          "QA",
                          "SA",
                          "OM",
                          "KW",
                          "BH",
                          "MY",
                          "PH",
                          "TH",
                          "VN",
                          "ID",
                          "IN",
                          "LK",
                          "NP",
                          "BD",
                          "PK",
                          "EG",
                          "MA",
                          "DZ",
                          "TN",
                          "JO",
                          "LB",
                          "TR",
                          "KH",
                          "MM",
                          "LA",
                          "EN",
                          "BT",
                          "VE",
                          "TW",
                          "HK",
                          "CN"
                        ],
                        "description": "Issuing country of the tax identification number (ISO-3166 alpha-2)."
                      },
                      "documentNumber": {
                        "type": "string",
                        "maxLength": 64,
                        "description": "Identity document number of an individual subject."
                      },
                      "documentType": {
                        "type": "string",
                        "maxLength": 64,
                        "description": "Type of the supplied identity document (e.g. passport)."
                      },
                      "documentCountry": {
                        "type": "string",
                        "enum": [
                          "US",
                          "CA",
                          "GB",
                          "DE",
                          "FR",
                          "AU",
                          "JP",
                          "KR",
                          "SE",
                          "NO",
                          "DK",
                          "FI",
                          "NL",
                          "BE",
                          "CH",
                          "AT",
                          "NZ",
                          "SG",
                          "IE",
                          "LU",
                          "PT",
                          "ES",
                          "IT",
                          "GR",
                          "CZ",
                          "PL",
                          "HU",
                          "SK",
                          "SI",
                          "EE",
                          "LT",
                          "LV",
                          "IS",
                          "MT",
                          "CY",
                          "HR",
                          "RO",
                          "BG",
                          "BR",
                          "AR",
                          "CL",
                          "MX",
                          "CO",
                          "PE",
                          "PA",
                          "UY",
                          "BO",
                          "ZA",
                          "NG",
                          "KE",
                          "GH",
                          "TZ",
                          "UG",
                          "RW",
                          "MW",
                          "ZM",
                          "BW",
                          "CD",
                          "CI",
                          "CM",
                          "IL",
                          "AE",
                          "QA",
                          "SA",
                          "OM",
                          "KW",
                          "BH",
                          "MY",
                          "PH",
                          "TH",
                          "VN",
                          "ID",
                          "IN",
                          "LK",
                          "NP",
                          "BD",
                          "PK",
                          "EG",
                          "MA",
                          "DZ",
                          "TN",
                          "JO",
                          "LB",
                          "TR",
                          "KH",
                          "MM",
                          "LA",
                          "EN",
                          "BT",
                          "VE",
                          "TW",
                          "HK",
                          "CN"
                        ],
                        "description": "Issuing country of the identity document (ISO-3166 alpha-2)."
                      },
                      "companyRegistrationNumber": {
                        "type": "string",
                        "maxLength": 64,
                        "description": "Registration number of an organisation subject."
                      },
                      "accountId": {
                        "type": "string",
                        "maxLength": 256,
                        "description": "Account in the requesting workspace this subject belongs to."
                      }
                    },
                    "required": [
                      "entityType"
                    ],
                    "additionalProperties": false
                  },
                  "reason": {
                    "type": "string",
                    "enum": [
                      "ONBOARDING",
                      "PRE_TRANSACTION",
                      "MANUAL_CHECK",
                      "PERIODIC_REVIEW",
                      "OTHER"
                    ],
                    "description": "Why this screening is being requested."
                  },
                  "reference": {
                    "type": "string",
                    "maxLength": 64,
                    "description": "Optional client reference echoed back on the response."
                  }
                },
                "required": [
                  "entity",
                  "reason"
                ],
                "additionalProperties": false,
                "description": "Request an AML screening for a single individual or organisation.",
                "example": {
                  "entity": {
                    "entityType": "INDIVIDUAL",
                    "firstName": "Jane",
                    "lastName": "Doe",
                    "dateOfBirth": "1985-04-12",
                    "nationality": "ES"
                  },
                  "reason": "ONBOARDING",
                  "reference": "case-2026-0042"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Screening completed, or not completed for a client-actionable reason (e.g. insufficient data).",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "screeningId": {
                      "type": "string",
                      "description": "Identifier of the screening record for correlation and lookup."
                    },
                    "reference": {
                      "type": "string",
                      "description": "The client reference supplied on the request, if any."
                    },
                    "status": {
                      "type": "string",
                      "enum": [
                        "COMPLETED",
                        "NOT_COMPLETED",
                        "FAILED"
                      ],
                      "description": "COMPLETED = a screening ran; NOT_COMPLETED = not run (see result/errors); FAILED = the screening could not be performed."
                    },
                    "result": {
                      "type": "string",
                      "enum": [
                        "CLEAR",
                        "POTENTIAL_MATCH",
                        "REVIEW_REQUIRED",
                        "INSUFFICIENT_DATA",
                        "ERROR"
                      ],
                      "description": "Screening outcome. A potential match is never a confirmed match."
                    },
                    "match": {
                      "type": "boolean",
                      "nullable": true,
                      "description": "true = at least one potential match; false = clear; null = no definitive screening was performed."
                    },
                    "potentialMatchCount": {
                      "type": "integer",
                      "minimum": 0,
                      "description": "Number of potential matches surfaced by the screening."
                    },
                    "reviewRequired": {
                      "type": "boolean",
                      "description": "Whether the outcome requires manual review before proceeding."
                    },
                    "screenedAt": {
                      "type": "string",
                      "description": "ISO-8601 timestamp of when the screening completed, if it did."
                    },
                    "errors": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "code": {
                            "type": "string",
                            "description": "Stable machine-readable error code."
                          },
                          "message": {
                            "type": "string",
                            "description": "Human-readable explanation."
                          }
                        },
                        "required": [
                          "code",
                          "message"
                        ]
                      },
                      "description": "Populated when the screening could not be run (e.g. insufficient data)."
                    }
                  },
                  "required": [
                    "screeningId",
                    "status",
                    "match",
                    "potentialMatchCount",
                    "reviewRequired"
                  ],
                  "description": "Result of an AML screening request."
                }
              }
            }
          },
          "400": {
            "description": "Invalid request payload",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "403": {
            "description": "AML screening is not enabled for this workspace",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "409": {
            "description": "Idempotency-Key reused with a different payload, or conflicting identifiers",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "503": {
            "description": "The screening could not be completed at this time",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/aml-screenings\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"entity\": {\n        \"entityType\": \"INDIVIDUAL\",\n        \"firstName\": \"Jane\",\n        \"lastName\": \"Doe\",\n        \"dateOfBirth\": \"1985-04-12\",\n        \"nationality\": \"ES\"\n      },\n      \"reason\": \"ONBOARDING\",\n      \"reference\": \"case-2026-0042\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api.virtuabroker.com/v1/aml-screenings\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"entity\": {\n            \"entityType\": \"INDIVIDUAL\",\n            \"firstName\": \"Jane\",\n            \"lastName\": \"Doe\",\n            \"dateOfBirth\": \"1985-04-12\",\n            \"nationality\": \"ES\"\n        },\n        \"reason\": \"ONBOARDING\",\n        \"reference\": \"case-2026-0042\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api.virtuabroker.com/v1/aml-screenings\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"entity\": {\n    \"entityType\": \"INDIVIDUAL\",\n    \"firstName\": \"Jane\",\n    \"lastName\": \"Doe\",\n    \"dateOfBirth\": \"1985-04-12\",\n    \"nationality\": \"ES\"\n  },\n  \"reason\": \"ONBOARDING\",\n  \"reference\": \"case-2026-0042\"\n}'"
          }
        ]
      }
    },
    "/v1/aml-screenings/{screeningId}": {
      "get": {
        "summary": "Get a screening result",
        "description": "Retrieve a previously created screening by its id. Only screenings created in the requesting workspace are visible.",
        "tags": [
          "AML Screening"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 1,
              "description": "Identifier of a screening previously created in this workspace."
            },
            "required": true,
            "description": "Identifier of a screening previously created in this workspace.",
            "name": "screeningId",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "The screening result",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "screeningId": {
                      "type": "string",
                      "description": "Identifier of the screening record for correlation and lookup."
                    },
                    "reference": {
                      "type": "string",
                      "description": "The client reference supplied on the request, if any."
                    },
                    "status": {
                      "type": "string",
                      "enum": [
                        "COMPLETED",
                        "NOT_COMPLETED",
                        "FAILED"
                      ],
                      "description": "COMPLETED = a screening ran; NOT_COMPLETED = not run (see result/errors); FAILED = the screening could not be performed."
                    },
                    "result": {
                      "type": "string",
                      "enum": [
                        "CLEAR",
                        "POTENTIAL_MATCH",
                        "REVIEW_REQUIRED",
                        "INSUFFICIENT_DATA",
                        "ERROR"
                      ],
                      "description": "Screening outcome. A potential match is never a confirmed match."
                    },
                    "match": {
                      "type": "boolean",
                      "nullable": true,
                      "description": "true = at least one potential match; false = clear; null = no definitive screening was performed."
                    },
                    "potentialMatchCount": {
                      "type": "integer",
                      "minimum": 0,
                      "description": "Number of potential matches surfaced by the screening."
                    },
                    "reviewRequired": {
                      "type": "boolean",
                      "description": "Whether the outcome requires manual review before proceeding."
                    },
                    "screenedAt": {
                      "type": "string",
                      "description": "ISO-8601 timestamp of when the screening completed, if it did."
                    },
                    "errors": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "code": {
                            "type": "string",
                            "description": "Stable machine-readable error code."
                          },
                          "message": {
                            "type": "string",
                            "description": "Human-readable explanation."
                          }
                        },
                        "required": [
                          "code",
                          "message"
                        ]
                      },
                      "description": "Populated when the screening could not be run (e.g. insufficient data)."
                    }
                  },
                  "required": [
                    "screeningId",
                    "status",
                    "match",
                    "potentialMatchCount",
                    "reviewRequired"
                  ],
                  "description": "Result of an AML screening request."
                }
              }
            }
          },
          "403": {
            "description": "AML screening is not enabled for this workspace",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "404": {
            "description": "No such screening in this workspace",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/aml-screenings/YOUR_SCREENINGID\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/aml-screenings/YOUR_SCREENINGID\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/aml-screenings/YOUR_SCREENINGID\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    },
    "/v1/aml-checks": {
      "post": {
        "summary": "Check a name against sanctions, PEP and watchlist data",
        "description": "Runs a live verification of a natural or legal person against global sanctions, politically-exposed-person and watchlist data — independent of any account, verification or payment. Provide the full name and, where available, an identifier (a Spanish DNI/NIE/NIF/CIF is recognised and used to infer the subject type). Every check is stored and retrievable. `match: null` means the check could not be completed and must never be read as clear. Safe to retry: each call runs a fresh check and appends to your history.",
        "tags": [
          "AML Screening"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string",
                    "minLength": 2,
                    "maxLength": 140,
                    "description": "Full name of the natural or legal person to verify against sanctions, PEP and watchlist data.",
                    "example": "Pedro Sánchez Pérez-Castejón"
                  },
                  "id": {
                    "type": "string",
                    "minLength": 3,
                    "maxLength": 32,
                    "description": "Identifier for your records — a Spanish DNI/NIE/NIF/CIF is recognised and used to infer the subject type; any other national identifier is accepted as-is.",
                    "example": "012345678A"
                  },
                  "entityType": {
                    "type": "string",
                    "enum": [
                      "INDIVIDUAL",
                      "COMPANY"
                    ],
                    "description": "Subject kind. When omitted it is inferred from the id where possible; otherwise the check matches both kinds."
                  },
                  "reference": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 64,
                    "description": "Your correlation reference, echoed back on the response."
                  }
                },
                "required": [
                  "name"
                ],
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "The check completed (match true/false with details)",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "checkId": {
                      "type": "string"
                    },
                    "reference": {
                      "type": "string"
                    },
                    "status": {
                      "type": "string",
                      "enum": [
                        "COMPLETED",
                        "FAILED"
                      ]
                    },
                    "match": {
                      "type": "boolean",
                      "nullable": true,
                      "description": "true = at least one potential match; false = clear; null = the check could not be completed and MUST NOT be read as clear."
                    },
                    "matchCount": {
                      "type": "integer",
                      "minimum": 0
                    },
                    "checkedAt": {
                      "type": "string",
                      "description": "ISO 8601"
                    },
                    "results": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "matchId": {
                            "type": "string",
                            "description": "Stable identifier of the matched list entry."
                          },
                          "name": {
                            "type": "string",
                            "description": "Name as it appears on the list."
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "PERSON",
                              "COMPANY",
                              "OTHER"
                            ]
                          },
                          "score": {
                            "type": "number",
                            "minimum": 0,
                            "maximum": 1,
                            "description": "Match strength between 0 and 1."
                          },
                          "flags": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "enum": [
                                "SANCTIONS",
                                "PEP",
                                "WATCHLIST",
                                "CRIME",
                                "OTHER"
                              ]
                            },
                            "description": "Why this entry is listed."
                          },
                          "title": {
                            "type": "string",
                            "description": "Known role or position."
                          },
                          "countries": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Associated countries (ISO 3166-1 alpha-2)."
                          },
                          "dateOfBirth": {
                            "type": "string",
                            "description": "YYYY-MM-DD where known."
                          }
                        },
                        "required": [
                          "matchId",
                          "name",
                          "type",
                          "score",
                          "flags",
                          "countries"
                        ],
                        "additionalProperties": false
                      },
                      "maxItems": 20
                    },
                    "errors": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "code": {
                            "type": "string",
                            "example": "CHECK_NOT_COMPLETED"
                          },
                          "message": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "code",
                          "message"
                        ],
                        "additionalProperties": false
                      },
                      "description": "Present when status is FAILED — machine-readable reasons the check could not be completed. Retry with a new check; never read a FAILED check as clear."
                    }
                  },
                  "required": [
                    "checkId",
                    "status",
                    "match",
                    "matchCount",
                    "checkedAt",
                    "results"
                  ],
                  "additionalProperties": false
                }
              }
            }
          },
          "400": {
            "description": "Invalid request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "403": {
            "description": "AML screening is not enabled for this workspace",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "503": {
            "description": "The check could not be completed (match is null — not a clear result). A stored FAILED check is returned with an `errors` array; internal errors return the standard error envelope instead.",
            "content": {
              "application/json": {
                "schema": {
                  "anyOf": [
                    {
                      "type": "object",
                      "properties": {
                        "checkId": {
                          "type": "string"
                        },
                        "reference": {
                          "type": "string"
                        },
                        "status": {
                          "type": "string",
                          "enum": [
                            "COMPLETED",
                            "FAILED"
                          ]
                        },
                        "match": {
                          "type": "boolean",
                          "nullable": true,
                          "description": "true = at least one potential match; false = clear; null = the check could not be completed and MUST NOT be read as clear."
                        },
                        "matchCount": {
                          "type": "integer",
                          "minimum": 0
                        },
                        "checkedAt": {
                          "type": "string",
                          "description": "ISO 8601"
                        },
                        "results": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "matchId": {
                                "type": "string",
                                "description": "Stable identifier of the matched list entry."
                              },
                              "name": {
                                "type": "string",
                                "description": "Name as it appears on the list."
                              },
                              "type": {
                                "type": "string",
                                "enum": [
                                  "PERSON",
                                  "COMPANY",
                                  "OTHER"
                                ]
                              },
                              "score": {
                                "type": "number",
                                "minimum": 0,
                                "maximum": 1,
                                "description": "Match strength between 0 and 1."
                              },
                              "flags": {
                                "type": "array",
                                "items": {
                                  "type": "string",
                                  "enum": [
                                    "SANCTIONS",
                                    "PEP",
                                    "WATCHLIST",
                                    "CRIME",
                                    "OTHER"
                                  ]
                                },
                                "description": "Why this entry is listed."
                              },
                              "title": {
                                "type": "string",
                                "description": "Known role or position."
                              },
                              "countries": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Associated countries (ISO 3166-1 alpha-2)."
                              },
                              "dateOfBirth": {
                                "type": "string",
                                "description": "YYYY-MM-DD where known."
                              }
                            },
                            "required": [
                              "matchId",
                              "name",
                              "type",
                              "score",
                              "flags",
                              "countries"
                            ],
                            "additionalProperties": false
                          },
                          "maxItems": 20
                        },
                        "errors": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "code": {
                                "type": "string",
                                "example": "CHECK_NOT_COMPLETED"
                              },
                              "message": {
                                "type": "string"
                              }
                            },
                            "required": [
                              "code",
                              "message"
                            ],
                            "additionalProperties": false
                          },
                          "description": "Present when status is FAILED — machine-readable reasons the check could not be completed. Retry with a new check; never read a FAILED check as clear."
                        }
                      },
                      "required": [
                        "checkId",
                        "status",
                        "match",
                        "matchCount",
                        "checkedAt",
                        "results"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "success": {
                          "type": "boolean",
                          "description": "Always false for error responses",
                          "example": false
                        },
                        "message": {
                          "type": "string",
                          "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                          "example": "Deposit not found"
                        },
                        "error": {
                          "type": "string",
                          "enum": [
                            "ValidationError",
                            "ExistenceError",
                            "StateError",
                            "DuplicityError",
                            "AuthorizationError",
                            "AllowanceError",
                            "FundsError",
                            "ExternalServiceError",
                            "OperationError"
                          ],
                          "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                          "example": "ExistenceError"
                        },
                        "errorId": {
                          "type": "number",
                          "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                          "example": 1017
                        },
                        "errorName": {
                          "type": "string",
                          "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                          "example": "documentNotFound"
                        },
                        "code": {
                          "type": "string",
                          "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                          "example": "provider_verification_required"
                        }
                      },
                      "required": [
                        "success",
                        "message",
                        "error"
                      ],
                      "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                    }
                  ]
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/aml-checks\", {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`,\n      \"Content-Type\": \"application/json\"\n    },\n    body: JSON.stringify({\n      \"name\": \"Pedro Sánchez Pérez-Castejón\",\n      \"id\": \"012345678A\",\n      \"entityType\": \"INDIVIDUAL\",\n      \"reference\": \"string\"\n    })\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.post(\n    \"https://api.virtuabroker.com/v1/aml-checks\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n    json={\n        \"name\": \"Pedro Sánchez Pérez-Castejón\",\n        \"id\": \"012345678A\",\n        \"entityType\": \"INDIVIDUAL\",\n        \"reference\": \"string\"\n    },\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X POST \"https://api.virtuabroker.com/v1/aml-checks\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n  \"name\": \"Pedro Sánchez Pérez-Castejón\",\n  \"id\": \"012345678A\",\n  \"entityType\": \"INDIVIDUAL\",\n  \"reference\": \"string\"\n}'"
          }
        ]
      }
    },
    "/v1/aml-checks/{checkId}": {
      "get": {
        "summary": "Get a stored check",
        "description": "Retrieve a previously run check by its id. Only checks created in the requesting workspace are visible.",
        "tags": [
          "AML Screening"
        ],
        "security": [
          {
            "oauth2": []
          }
        ],
        "parameters": [
          {
            "schema": {
              "type": "string",
              "minLength": 1
            },
            "required": true,
            "name": "checkId",
            "in": "path"
          }
        ],
        "responses": {
          "200": {
            "description": "The stored check",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "checkId": {
                      "type": "string"
                    },
                    "reference": {
                      "type": "string"
                    },
                    "status": {
                      "type": "string",
                      "enum": [
                        "COMPLETED",
                        "FAILED"
                      ]
                    },
                    "match": {
                      "type": "boolean",
                      "nullable": true,
                      "description": "true = at least one potential match; false = clear; null = the check could not be completed and MUST NOT be read as clear."
                    },
                    "matchCount": {
                      "type": "integer",
                      "minimum": 0
                    },
                    "checkedAt": {
                      "type": "string",
                      "description": "ISO 8601"
                    },
                    "results": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "matchId": {
                            "type": "string",
                            "description": "Stable identifier of the matched list entry."
                          },
                          "name": {
                            "type": "string",
                            "description": "Name as it appears on the list."
                          },
                          "type": {
                            "type": "string",
                            "enum": [
                              "PERSON",
                              "COMPANY",
                              "OTHER"
                            ]
                          },
                          "score": {
                            "type": "number",
                            "minimum": 0,
                            "maximum": 1,
                            "description": "Match strength between 0 and 1."
                          },
                          "flags": {
                            "type": "array",
                            "items": {
                              "type": "string",
                              "enum": [
                                "SANCTIONS",
                                "PEP",
                                "WATCHLIST",
                                "CRIME",
                                "OTHER"
                              ]
                            },
                            "description": "Why this entry is listed."
                          },
                          "title": {
                            "type": "string",
                            "description": "Known role or position."
                          },
                          "countries": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            },
                            "description": "Associated countries (ISO 3166-1 alpha-2)."
                          },
                          "dateOfBirth": {
                            "type": "string",
                            "description": "YYYY-MM-DD where known."
                          }
                        },
                        "required": [
                          "matchId",
                          "name",
                          "type",
                          "score",
                          "flags",
                          "countries"
                        ],
                        "additionalProperties": false
                      },
                      "maxItems": 20
                    },
                    "errors": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "code": {
                            "type": "string",
                            "example": "CHECK_NOT_COMPLETED"
                          },
                          "message": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "code",
                          "message"
                        ],
                        "additionalProperties": false
                      },
                      "description": "Present when status is FAILED — machine-readable reasons the check could not be completed. Retry with a new check; never read a FAILED check as clear."
                    }
                  },
                  "required": [
                    "checkId",
                    "status",
                    "match",
                    "matchCount",
                    "checkedAt",
                    "results"
                  ],
                  "additionalProperties": false
                }
              }
            }
          },
          "403": {
            "description": "AML screening is not enabled for this workspace",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          },
          "404": {
            "description": "No such check in this workspace",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "description": "Always false for error responses",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "description": "Human-readable error description. Do not branch on this value — use `error` instead.",
                      "example": "Deposit not found"
                    },
                    "error": {
                      "type": "string",
                      "enum": [
                        "ValidationError",
                        "ExistenceError",
                        "StateError",
                        "DuplicityError",
                        "AuthorizationError",
                        "AllowanceError",
                        "FundsError",
                        "ExternalServiceError",
                        "OperationError"
                      ],
                      "description": "Machine-readable error type. Use this field for programmatic error handling. See error-codes documentation for HTTP status, meaning, and recommended consumer action per type.",
                      "example": "ExistenceError"
                    },
                    "errorId": {
                      "type": "number",
                      "description": "Stable numeric sub-type identifier (e.g. 1017 for documentNotFound). Present on most error paths.",
                      "example": 1017
                    },
                    "errorName": {
                      "type": "string",
                      "description": "Stable sub-type identifier label (e.g. documentNotFound).",
                      "example": "documentNotFound"
                    },
                    "code": {
                      "type": "string",
                      "description": "Stable machine-readable refusal reason, narrower than `error`. Returned by the error paths that publish one, and it is what to branch on when the message is deliberately abstract.",
                      "example": "provider_verification_required"
                    }
                  },
                  "required": [
                    "success",
                    "message",
                    "error"
                  ],
                  "description": "Error response shape. The `error` field is the stable contract — branch on it, not on `message`."
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "JavaScript",
            "label": "Node.js",
            "source": "const res = await fetch(\"https://api.virtuabroker.com/v1/aml-checks/YOUR_CHECKID\", {\n    method: \"GET\",\n    headers: {\n      Authorization: `Bearer ${process.env.VB_TOKEN}`\n    }\n  });\nconst data = await res.json();"
          },
          {
            "lang": "Python",
            "label": "Python",
            "source": "import os, requests\n\nres = requests.get(\n    \"https://api.virtuabroker.com/v1/aml-checks/YOUR_CHECKID\",\n    headers={\"Authorization\": f\"Bearer {os.environ['VB_TOKEN']}\"},\n)\ndata = res.json()"
          },
          {
            "lang": "Shell",
            "label": "cURL",
            "source": "curl -X GET \"https://api.virtuabroker.com/v1/aml-checks/YOUR_CHECKID\" \\\n  -H \"Authorization: Bearer $VB_TOKEN\""
          }
        ]
      }
    }
  },
  "tags": [
    {
      "name": "System",
      "description": "Public platform health for status pages and uptime checks."
    },
    {
      "name": "Pairs",
      "description": "Which currency corridors are tradable and their constraints — the routes a quote can price."
    },
    {
      "name": "Quotes",
      "description": "Real-time price locks for a currency pair. A quote fixes the rate and fees for a short window; no customer identity is required to fetch one."
    },
    {
      "name": "Currencies",
      "description": "Supported currencies and the transfer methods (rails) available for collecting and paying out each one."
    },
    {
      "name": "Orders",
      "description": "Bind a quote to a customer and drive a payment end to end — collect origin funds, convert at the locked rate, and pay out to the destination."
    },
    {
      "name": "Deposits",
      "description": "How funds enter a workspace: request payment instructions (a bank reference/IBAN or a crypto address) and get credited automatically on receipt."
    },
    {
      "name": "Withdrawals",
      "description": "Pay out from an existing balance to a fiat or crypto destination, including 2FA-gated approval where required."
    },
    {
      "name": "Balances",
      "description": "Per-currency available balances for a workspace."
    },
    {
      "name": "Openbanking",
      "description": "Open-banking payment initiation, where enabled for the workspace."
    },
    {
      "name": "KYC",
      "description": "Submit and track identity verification (KYC/KYB) for the parties in a payment. Observable states and required fields only — never internal screening logic."
    },
    {
      "name": "Pending Payments",
      "description": "Inbound payments awaiting attribution or review before they can be credited."
    },
    {
      "name": "AML Screening",
      "description": "Screen an individual or organisation against sanctions, PEP, watchlist and adverse-media data. A potential match is never a confirmed match."
    },
    {
      "name": "Banking Accounts",
      "description": "The virtual and linked bank accounts a workspace can collect funds into."
    },
    {
      "name": "Customers",
      "description": "The end-users (individuals and organisations) a workspace manages: onboard them, track their verification status, and act on their behalf in payments."
    },
    {
      "name": "PaymentRequests",
      "description": "Payment links: request funds on behalf of a managed customer, share the hosted checkout link, and track the request until it is paid."
    },
    {
      "name": "Webhooks",
      "description": "Register endpoints and receive signed event notifications for deposits, trades, withdrawals, order status and identity. Verify the `X-VirtuaBroker-Signature-256` header on every delivery."
    },
    {
      "name": "Conversations",
      "description": "Run a real-time b2c support chat for your end-users: open threads, send replies, list and stream messages."
    },
    {
      "name": "Mocks",
      "description": "**Stage only.** Sandbox helpers for exercising flows on the stage environment. These endpoints are not mounted on production — the same call against `api.virtuabroker.com` returns `401`."
    },
    {
      "name": "Simulation",
      "description": "**Stage only.** Because no real funding reaches stage, an order or deposit would otherwise sit in `Pending` waiting for a transfer that never arrives. These endpoints stand in for that money movement: the deposit is credited, the order continues its lifecycle, and the corresponding webhooks fire — exactly as a real transfer would. Call them with your normal stage credentials against `https://api-stage.virtuabroker.com`. They are not mounted on production."
    }
  ],
  "webhooks": {
    "events": {
      "post": {
        "summary": "Handle webhook events",
        "description": "Your server receives POST requests with the `WebhookRequest` schema: `type`, `id`, `api_version` (e.g. `1.0`), `apiKey`, and `data`. Event types cover deposits, deposit methods, trades, withdrawals, order status, open-banking payment status, and identity verification. **Recommended:** handle **`verification_status_updated`** for KYC and KYB (`data.verificationType` is `KYC` or `KYB`). **`kyc_completed`** is **deprecated** (may still be sent); new integrations should not rely on it. For deposit methods, **`deposit_method_created`** is sent when a method is provisioned and **`deposit_method_activated`** at most once when its receiving instructions (`data.depositInfo`) become available; ordering between the two is not guaranteed when activation is immediate. **`deposit_action_required`** is sent when an inbound deposit is held until you declare its origin (Travel Rule): answer with `POST /v1/deposits/holds/{holdId}/travel-rule`; it is re-sent every 6 hours while unanswered (`data.reminder: true`). If you receive multiple events for the same outcome, deduplicate using stable fields in `data` (e.g. entity identifiers, `methodId`) together with `type`. Return any **2xx** response to acknowledge receipt.",
        "operationId": "events",
        "tags": [
          "Webhooks"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WebhookRequest"
              }
            }
          }
        },
        "responses": {
          "2XX": {
            "description": "Return any 2XX status to indicate that the data was received successfully"
          }
        },
        "security": []
      }
    }
  },
  "x-tagGroups": [
    {
      "name": "Pricing",
      "tags": [
        "Pairs",
        "Quotes",
        "Currencies"
      ]
    },
    {
      "name": "Payments",
      "tags": [
        "Orders",
        "Deposits",
        "Withdrawals",
        "Balances"
      ]
    },
    {
      "name": "Open banking",
      "tags": [
        "Openbanking"
      ]
    },
    {
      "name": "Identity & compliance",
      "tags": [
        "KYC",
        "Pending Payments",
        "AML Screening"
      ]
    },
    {
      "name": "Events",
      "tags": [
        "Webhooks"
      ]
    },
    {
      "name": "Accounts",
      "tags": [
        "Banking Accounts"
      ]
    },
    {
      "name": "Support",
      "tags": [
        "Support"
      ]
    },
    {
      "name": "Platform",
      "tags": [
        "System"
      ]
    },
    {
      "name": "Testing",
      "tags": [
        "Simulation",
        "Mocks"
      ]
    }
  ]
}
